Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7453586B2 - Merge area detection method, merge area detection device and program - Google Patents
[go: Go Back, main page]

JP7453586B2 - Merge area detection method, merge area detection device and program - Google Patents

Merge area detection method, merge area detection device and program Download PDF

Info

Publication number
JP7453586B2
JP7453586B2 JP2022560606A JP2022560606A JP7453586B2 JP 7453586 B2 JP7453586 B2 JP 7453586B2 JP 2022560606 A JP2022560606 A JP 2022560606A JP 2022560606 A JP2022560606 A JP 2022560606A JP 7453586 B2 JP7453586 B2 JP 7453586B2
Authority
JP
Japan
Prior art keywords
data
boundary
merge
area
point cloud
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
JP2022560606A
Other languages
Japanese (ja)
Other versions
JPWO2022097279A1 (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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022097279A1 publication Critical patent/JPWO2022097279A1/ja
Application granted granted Critical
Publication of JP7453586B2 publication Critical patent/JP7453586B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Image Analysis (AREA)

Description

本発明は、マージ領域検出方法、マージ領域検出装置及びプログラムに関する。 The present invention relates to a merge area detection method, a merge area detection device, and a program.

固定LiDAR(Light Detection and Ranging)、車載型LiDAR、ドローン搭載型LiDAR、MMS(Mobile Mapping System)などの機器により空間内の点群データを取得する機会が今後増加すると予測されている。このような機会の増加により、保管される点群データのデータ量や数も増大する。点群データは、データ保存の際に、符号化される場合が多い。そこで、点群データの符号化には、例えばG-PCC(Geometry based Point Cloud Compression)が用いられる(例えば、非特許文献1参照)。 It is predicted that opportunities to acquire point cloud data in space will increase in the future using devices such as fixed LiDAR (Light Detection and Ranging), vehicle-mounted LiDAR, drone-mounted LiDAR, and MMS (Mobile Mapping System). Due to this increase in opportunities, the amount and number of point cloud data to be stored will also increase. Point cloud data is often encoded when the data is stored. Therefore, for example, G-PCC (Geometry based Point Cloud Compression) is used to encode point cloud data (see, for example, Non-Patent Document 1).

点群データは現実の連続する空間のうち、ある部分空間に対して取得される点の集合である。そのため、点群データは、空間内の境界をもつ。点群データを利用する際には、必ずしも取得した単位のみでデータを扱うわけではない。例えば、空間として連続する複数の点群データをマージする場合がある。このマージを行う場合、符号化された点群データを一度復号する必要がある。尚、ここではマージを行う対象のデータ間には座標のずれがないものとして説明を行う。 Point cloud data is a set of points acquired for a certain subspace in a continuous real space. Therefore, point cloud data has boundaries in space. When using point cloud data, it is not always necessary to handle the data only in the acquired units. For example, a plurality of spatially continuous point cloud data may be merged. When performing this merging, it is necessary to decode the encoded point cloud data once. Note that the explanation here assumes that there is no coordinate shift between the data to be merged.

"Information technology - MPEG-I (Coded Representation of Immersive Media) - Part 9: Geometry-based Point Cloud Compression",ISO/IEC DIS 23090-9,2019."Information technology - MPEG-I (Coded Representation of Immersive Media) - Part 9: Geometry-based Point Cloud Compression", ISO/IEC DIS 23090-9, 2019.

点群データの自動的なマージ方法として、特に空間内での点群の座標を気にせずに、二つの点群データが示す全ての点群を足し合わせる方法が考えられる。しかし、一般に、隣接する部分空間にきれいに分けて点群データが取得されることはない。つまり、同じ領域内に、双方の点群が存在する可能性がある。以下では、このような二つの点群データの点群が存在する領域を「点群が重なる領域」と記載する。 A possible method for automatically merging point cloud data is to add all the point groups represented by two point cloud data without worrying about the coordinates of the point clouds in space. However, in general, point cloud data is not acquired neatly divided into adjacent subspaces. In other words, there is a possibility that both point groups exist within the same area. In the following, a region where such point clouds of two point cloud data exist will be referred to as a "region where the point clouds overlap."

マージ対象の二つの点群データが別の日時に取得される場合がある。さらには、それら点群データが取得された間に、点群が重なる領域内の構造物の状況が変わっている場合がある。建物が新たに作られた場合、前回停められていた車がいない場合、などがその例である。このように構造物の状況が変わっているにもかかわらず全ての点群を足し合わせた場合、正しく空間の様子を把握することは難しいと考えられる。 Two point cloud data to be merged may be acquired at different times. Furthermore, while the point cloud data was acquired, the state of the structure within the region where the point clouds overlap may have changed. Examples include when a new building is built, or when the car that was parked last time is no longer there. Even though the situation of the structure is changing in this way, if all the point clouds are added together, it is considered difficult to accurately grasp the state of the space.

マージ対象の二つの点群データのうち、いずれが優先される点群データ(以下、「更新データ」と記載)であり、いずれが優先されない点群データ(以下、「旧データ」と記載)であるかが決まっている場合もある。その場合は、点群が重なる領域については、旧データを用いずに全て更新データのみを残してマージすることにより、正しく空間の様子を表す点群データを作成することができると考えられる。 Of the two point cloud data to be merged, which one is the prioritized point cloud data (hereinafter referred to as "updated data") and which is the non-prioritized point cloud data (hereinafter referred to as "old data"). In some cases, it has already been decided whether there is one or not. In that case, it is considered possible to create point cloud data that accurately represents the state of the space by merging the areas where the point clouds overlap, leaving only the updated data without using the old data.

一方で、点群データは、基本的にはある位置のレーザーからの反射波を用いて計測される。よって、取得される点群の範囲はばらばらである。それらの領域をきれいに分けようとすると、一般的には手動あるいは点群の詳細な解析手法等を用いる必要がある。これらは、点群の表す構造物などを確認しながら行われるため、正確にマージを行える可能性がある。しかし、処理に手間がかかるため、人的コストや時間的コストが増大することが想定される。 On the other hand, point cloud data is basically measured using reflected waves from a laser at a certain position. Therefore, the range of the acquired point clouds varies. In order to clearly divide these regions, it is generally necessary to use manual methods or detailed point cloud analysis methods. These processes are performed while checking the structures represented by the point cloud, so there is a possibility that the merge can be performed accurately. However, since the processing is time-consuming, it is expected that human costs and time costs will increase.

上記事情に鑑み、本発明は、対象の空間に重なりがある点群データ同士をマージする際の領域を定めることができるマージ領域検出方法、マージ領域検出装置及びプログラムを提供することを目的としている。 In view of the above circumstances, an object of the present invention is to provide a merge area detection method, a merge area detection device, and a program that can determine an area when merging point cloud data that overlap in the target space. .

本発明の一態様は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得ステップと、前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定ステップと、を有するマージ領域検出方法である。 One aspect of the present invention is that first point cloud data including information on the position of each point in a part of a predetermined space is divided into tree-structured regions having a plurality of hierarchies. an acquisition step of acquiring tree-structured data represented by information on the presence or absence of points in each region; and a step of acquiring the first point group in the predetermined space based on the highest hierarchy in which points exist in the hierarchy of the tree-structured data. a boundary determining step of determining a merging boundary, which is a boundary when merging the data and second point cloud data including information on each point in at least a part of the predetermined space, in units of the area; A merge region detection method has the following steps.

本発明の一態様は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得部と、前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定部と、を備えるマージ領域検出装置である。 One aspect of the present invention is that first point cloud data including information on the position of each point in a part of a predetermined space is divided into tree-structured regions having a plurality of hierarchies. an acquisition unit that acquires tree structure data represented by information on the presence or absence of points in each region; and an acquisition unit that acquires the first point group in the predetermined space based on the highest layer in which points exist in the hierarchy of the tree structure data. a boundary determining unit that determines a merging boundary, which is a boundary when merging the data and second point cloud data including information on each point in at least a part of the predetermined space, in units of the area; A merge area detection device includes:

本発明の一態様は、コンピュータに、上述のマージ領域検出方法を実行させるためのプログラムである。 One aspect of the present invention is a program for causing a computer to execute the above-described merge area detection method.

本発明により、対象の空間に重なりがある点群データ同士をマージする際の領域を定めることが可能となる。 According to the present invention, it is possible to define an area for merging point cloud data that overlap in the target space.

第1の実施形態によるマージ領域検出装置の構成を示すブロック図である。FIG. 1 is a block diagram showing the configuration of a merge area detection device according to a first embodiment. 同実施形態に用いられる空間領域分割の親ブロックと子ブロックを示す図である。It is a figure which shows the parent block and child block of spatial area division used for the same embodiment. 同実施形態に用いられる点群データを含む空間領域の分割を示す図である。FIG. 3 is a diagram showing division of a spatial region including point cloud data used in the same embodiment. 同実施形態に用いられる8分木の例を示す図である。FIG. 3 is a diagram showing an example of an 8-ary tree used in the embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。FIG. 3 is a flow diagram showing the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。FIG. 3 is a flow diagram showing the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。FIG. 3 is a diagram for explaining the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。FIG. 3 is a diagram for explaining the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。FIG. 3 is a diagram for explaining the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。FIG. 3 is a diagram for explaining the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。FIG. 3 is a flow diagram showing the operation of the merge area detection device in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。FIG. 3 is a diagram for explaining the operation of the merge area detection device in the same embodiment. 第2の実施形態によるマージ領域検出装置の構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of a merge area detection device according to a second embodiment. 同実施形態における8分木データから4分木データへの変換を説明するための図である。FIG. 7 is a diagram for explaining conversion from 8-branch tree data to quadruple-tree data in the same embodiment. 同実施形態における2次元平面に射影した点の座標を用いた木構造データの生成を説明するための図である。FIG. 6 is a diagram for explaining the generation of tree structure data using the coordinates of points projected onto a two-dimensional plane in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。FIG. 3 is a flow diagram showing the operation of the merge area detection device in the same embodiment. 第1及び第2の実施形態におけるマージ領域検出装置のハードウェア構成を示す図である。FIG. 2 is a diagram showing a hardware configuration of a merge area detection device in first and second embodiments.

以下、図面を参照しながら本発明の実施形態を詳細に説明する。本実施形態では、手動あるいは詳細な解析手法を用いることなく、旧データの点群データと更新データの点群データとをマージする領域を定める。この領域は、旧データに対して更新データへの置き換えを行う領域、又は、更新データに対して旧データを合わせる領域である。本実施形態では、点群データを8分木などの木構造で表した木構造データを用いて、マージする領域を高速に判定可能である。 Embodiments of the present invention will be described in detail below with reference to the drawings. In this embodiment, a region is determined in which point cloud data of old data and point cloud data of updated data are to be merged without using manual or detailed analysis methods. This area is an area where old data is replaced with updated data, or an area where old data is combined with updated data. In this embodiment, regions to be merged can be determined at high speed by using tree structure data in which point cloud data is expressed in a tree structure such as an 8-ary tree.

(第1の実施形態)
図1は、第1の実施形態によるマージ領域検出装置1の構成を示すブロック図である。マージ領域検出装置1は、記憶部11と、入力部12と、分割部13と、変換部14と、置換部15と、境界決定部16と、マージ部17を備える。
(First embodiment)
FIG. 1 is a block diagram showing the configuration of a merge area detection device 1 according to the first embodiment. The merge area detection device 1 includes a storage section 11 , an input section 12 , a division section 13 , a conversion section 14 , a replacement section 15 , a boundary determination section 16 , and a merging section 17 .

記憶部11は、旧データの点群データと、更新データの点群データとを記憶する。点群データは、空間領域において点が存在する座標値の集合のデータを含む。旧データに含まれる点の座標値と、更新データに含まれる点の座標値とは、同一の座標空間における値である。旧データの空間領域と、更新データの空間領域とは、一部が重なっている。 The storage unit 11 stores point cloud data of old data and point cloud data of updated data. The point cloud data includes data of a set of coordinate values where points exist in a spatial domain. The coordinate values of the points included in the old data and the coordinate values of the points included in the updated data are values in the same coordinate space. The spatial area of the old data and the spatial area of the updated data partially overlap.

入力部12は、データを入力する。入力は、他の装置からのデータの受信でもよく、他の装置又は記録媒体からのデータの読み出しでもよい。また、入力は、キーボードやタッチパネル等の既存の入力装置によるデータの入力を含んでもよい。入力部12は、旧データ及び更新データを入力し、入力したこれらデータを記憶部11に書き込む。 The input unit 12 inputs data. Input may be receiving data from other devices or reading data from other devices or recording media. Further, the input may include inputting data using an existing input device such as a keyboard or a touch panel. The input unit 12 inputs old data and updated data, and writes these input data into the storage unit 11.

分割部13は、旧データの空間領域及び更新データの空間領域をそれぞれ、分割領域に分割する。分割領域は、点群データを木構造データに変換する単位である。木構造データは、点群データが示す点の集合が得られた空間領域のうち、点が含まれる分割空間を8分木構造で表現したデータである。旧データの分割と更新データの分割とには、共通の分割領域が用いられる。 The dividing unit 13 divides the old data spatial area and the updated data spatial area into divided areas, respectively. A divided area is a unit for converting point cloud data into tree structure data. The tree structure data is data in which a divided space including points in a spatial region from which a set of points indicated by the point cloud data is obtained is expressed in an 8-ary tree structure. A common dividing area is used for dividing old data and dividing updated data.

変換部14は、旧データが示す点群を分割領域ごとに木構造データに変換する。変換部14は、変換した木構造データに、分割領域のサイズ及び位置を示すヘッダ情報を付加する。同様に、変換部14は、更新データが示す点群を分割領域ごとに木構造データに変換し、変換した木構造データに、分割領域のサイズ及び位置を示すヘッダ情報を付加する。これにより、旧データの空間領域及び更新データの空間領域によらず、旧データ及び更新データを、共通の分割領域毎の木構造データにより表すことができる。 The conversion unit 14 converts the point group indicated by the old data into tree structure data for each divided area. The conversion unit 14 adds header information indicating the size and position of the divided area to the converted tree structure data. Similarly, the conversion unit 14 converts the point group indicated by the update data into tree structure data for each divided area, and adds header information indicating the size and position of the divided area to the converted tree structure data. Thereby, the old data and the updated data can be represented by tree structure data for each common divided area, regardless of the spatial area of the old data and the spatial area of the updated data.

置換部15は、旧データに対して、更新データが表現する現実空間と対応する旧データの領域を、更新データに置き換える。あるいは、置換部15は、更新データに対して、更新データが存在しない分割領域を、旧データの分割領域に置き換える。 The replacement unit 15 replaces an area of the old data corresponding to the real space represented by the updated data with the updated data. Alternatively, the replacement unit 15 replaces a divided area in which no updated data exists with a divided area of old data in the updated data.

境界決定部16は、旧データ及び更新データの点群が重なる空間を含む分割領域について、マージ境界を決定する。マージ境界は、旧データを更新データにより置き換える境界又は更新データに旧データを付加する境界である。マージ部17は、境界決定部16が決定したマージ境界に従って、分割領域における旧データの点群データと更新データの点群データとをマージする。 The boundary determining unit 16 determines a merge boundary for a divided area that includes a space where the point clouds of old data and updated data overlap. The merge boundary is a boundary where old data is replaced with updated data or a boundary where old data is added to updated data. The merging unit 17 merges the point cloud data of the old data and the point cloud data of the updated data in the divided area according to the merging boundary determined by the boundary determining unit 16.

図2~図4を用いて、点群データの木構造データを説明する。本実施形態において、点群データに含まれる各点の座標値は、xyz座標における各成分の値、すなわち、x座標値、y座標値、及び、z座標値により表される。 Tree structure data of point cloud data will be explained using FIGS. 2 to 4. In this embodiment, the coordinate value of each point included in the point cloud data is represented by the value of each component in the xyz coordinates, that is, the x coordinate value, the y coordinate value, and the z coordinate value.

図2は、木構造データを生成する際の空間領域分割に用いられる親ブロックと子ブロックを示す図である。立方体の空間である親ブロックBを、互いに直交する3方向(x軸,y軸,z軸)のそれぞれで2等分することにより、親ブロックBから8個の立方体の子ブロックB-0~B-7が生成される。 FIG. 2 is a diagram showing parent blocks and child blocks used for spatial region division when generating tree-structured data. By dividing the parent block B, which is a cubic space, into two equal parts in each of the three mutually orthogonal directions (x-axis, y-axis, z-axis), eight cubic child blocks B-0 ~ B-7 is generated.

図3は、木構造データを生成するための空間領域の分割を示す図である。ブロックB0は、各辺が2の立方体である。ブロックB0は、分割部13が旧データの空間領域及び更新データの空間領域を分割する際に用いられる分割領域に相当する。演算処理の簡略化のため、点群データの座標値は相対座標系の座標値に変換される。具体的には、点群データの座標は、x,y,zの各成分の最小値が0になるように平行移動される。これにより、ブロックB0の一つの頂点の座標が(0,0,0)となる。ブロックB0のx=2、y=2、z=2の各辺は、点を含まない。nは正の整数をとる。nは、符号化対象の点群の大きさに基づいて決定されてもよい。 FIG. 3 is a diagram showing the division of a spatial region to generate tree-structured data. Block B0 is a cube with 2 n sides. Block B0 corresponds to a divided region used when the dividing unit 13 divides the spatial region of old data and the spatial region of updated data. To simplify calculation processing, the coordinate values of the point cloud data are converted to coordinate values of a relative coordinate system. Specifically, the coordinates of the point group data are translated in such a way that the minimum value of each component of x, y, and z becomes 0. As a result, the coordinates of one vertex of block B0 become (0, 0, 0). Each side of block B0, x=2 n , y=2 n , z=2 n , does not include a point. n takes a positive integer. n may be determined based on the size of the point group to be encoded.

ブロックB0を親ブロックとして図2に示す空間領域分割を行うと、8個の子ブロックであるブロックB1-0~B1-7が生成される。次に、ブロックB1-0~B1-7のうち、1個以上の点を含むブロックB1-i(iは0以上7以下の整数)を親ブロックとして図2に示す空間領域分割を行うと、8個の子ブロックであるブロックB2-i-0~B2-i-7が生成される。点を含まないブロックB1-iについては、分割は行われない。 When the spatial region division shown in FIG. 2 is performed using block B0 as a parent block, eight child blocks, blocks B1-0 to B1-7, are generated. Next, among blocks B1-0 to B1-7, block B1-i (i is an integer from 0 to 7) containing one or more points is used as a parent block to perform spatial region division as shown in FIG. Eight child blocks, blocks B2-i-0 to B2-i-7, are generated. No division is performed for block B1-i that does not include any points.

ブロックB2-i-0~B2-i-7のうち、1個以上の点を含むブロックB2-i-j(jは0以上7以下の整数)を親ブロックとして図2に示す空間領域分割が行われる。これにより、8個の子ブロックであるブロックB3-i-j-0~B3-i-j-7が生成される。さらに、1個以上の点を含む子ブロックを親ブロックとして空間領域分割を行う処理を、所定回繰り返す。なお、m回目(mは1以上の整数)の分割により生成された子ブロックを、m階層目のブロックと記載する。 Among blocks B2-i-0 to B2-i-7, the spatial region division shown in FIG. It will be done. As a result, blocks B3-ij-0 to B3-ij-7, which are eight child blocks, are generated. Furthermore, the process of performing spatial region division using a child block containing one or more points as a parent block is repeated a predetermined number of times. Note that a child block generated by the m-th division (m is an integer of 1 or more) is referred to as an m-th layer block.

図4は、8分木の例を示す図である。点群データは、図3のように分割された立体空間に対応した8分木(オクツリー)により表現される。最上位のノードN0は、ブロックB0に対応する。ノードN0は、1階層目の8つのノードN1-0~N1-7と接続される。ノードN1-iは、ブロックB1-iに対応する。点を含むブロックに対応したノードを、点を含むノードと記載し、点を含まないブロックに対応したノードを、点を含まないノードと記載する。 FIG. 4 is a diagram showing an example of an 8-ary tree. The point cloud data is expressed by an octree corresponding to the divided three-dimensional space as shown in FIG. The highest node N0 corresponds to block B0. Node N0 is connected to eight nodes N1-0 to N1-7 on the first layer. Node N1-i corresponds to block B1-i. A node corresponding to a block including points will be described as a node including points, and a node corresponding to a block not including points will be described as a node not including points.

点を含むノードN1-iは、2階層目の8つのノードN2-i-0~N2-i-7と接続される。ノードN2-i-jは、ブロックB2-i-jに対応する。点が含まれないブロックB1-iは分割されないため、そのブロックB1-iに対応したノードN1-iは、2階層目のノードとは接続されない。図4では、点が含まれないノードN1-0~N1-6は、2階層目のノードとは接続されない。また、点を含むノードN1-7は、2階層目のノードN2-7-0~N2-7-7と接続される。点が含まれないノードN2-7-0、N2-7-2~7は、3階層目のノードとは接続されない。点を含むノードN2-7-2は、3階層目の8つのノードN3-7-1-0~N3-7-1-7と接続される。 Node N1-i including a point is connected to eight nodes N2-i-0 to N2-i-7 on the second layer. Node N2-ij corresponds to block B2-ij. Since a block B1-i that does not include a point is not divided, the node N1-i corresponding to that block B1-i is not connected to a node on the second layer. In FIG. 4, nodes N1-0 to N1-6 that do not include points are not connected to nodes in the second layer. Further, the node N1-7 including the point is connected to the nodes N2-7-0 to N2-7-7 on the second layer. Nodes N2-7-0 and N2-7-2 to N2-7-7 that do not include a point are not connected to the third layer node. The node N2-7-2 including the point is connected to eight nodes N3-7-1-0 to N3-7-1-7 on the third layer.

点群データからは、上記のように分割された空間領域に対応した木構造のノードが生成される。点を含むブロックに対応したノードについては、そのブロックを親ブロックとする子ブロックのそれぞれが点を含むか否かを表したブロック値が付与される。つまり、点を含むブロックに対応したノードには、そのノードの1階層下のノードそれぞれが点を含むか否かを表したブロック値が付与される。このブロック値は、式(1)のように表される。xは、8つの子ブロックのうちk番目(kは0以上7以下の整数)の子ブロックに点が含まれているか否かを表す符号である。「1」は点を含むことを表し、「0」は点を含まないことを表す。 Tree-structured nodes corresponding to the spatial regions divided as described above are generated from the point cloud data. A node corresponding to a block containing a point is assigned a block value indicating whether or not each child block whose parent block is the block includes a point. In other words, a node corresponding to a block containing a point is given a block value indicating whether each node one layer below the node contains a point. This block value is expressed as in equation (1). x k is a code indicating whether a point is included in the k-th child block (k is an integer from 0 to 7) among the eight child blocks. "1" indicates that a point is included, and "0" indicates that a point is not included.

Figure 0007453586000001
Figure 0007453586000001

例えば、ブロックB0の子ブロックのうちブロックB1-2及びB1-7のみが点を含む場合、ブロックB0に対応したノードのブロック値は、f(0,0,1,0,0,0,0,1)=33と表される。また、あるブロックの8つの子ブロックの全てが点を含んでいる場合、ブロック値は、f(1,1,1,1,1,1,1,1)=255と表される。このようにして、各ノードに、式(1)により点の位置を0から255までの値で表したブロック値が付与される。 For example, if only blocks B1-2 and B1-7 among the child blocks of block B0 include points, the block value of the node corresponding to block B0 is f(0, 0, 1, 0, 0, 0, 0 , 1)=33. Further, when all eight child blocks of a certain block include points, the block value is expressed as f(1, 1, 1, 1, 1, 1, 1, 1)=255. In this way, each node is given a block value representing the position of the point as a value from 0 to 255 using equation (1).

図5は、マージ領域検出装置1の処理を示すフロー図である。図5は、旧データに更新データをマージする場合の処理を示す。マージ領域検出装置1の入力部12は、データA及びデータBを入力する(ステップS110)。記憶部11は、入力されたデータA及びデータBを記憶する。データA及びデータBは、点群データである。データA及びデータBは、分割領域ごとに8分木構造化されたデータでもよい。分割部13は、入力部12により入力された指示に従い、データAを旧データとし、データBを更新データとする。 FIG. 5 is a flow diagram showing the processing of the merge area detection device 1. FIG. 5 shows a process for merging updated data with old data. The input unit 12 of the merge area detection device 1 inputs data A and data B (step S110). The storage unit 11 stores input data A and data B. Data A and data B are point cloud data. Data A and data B may be data structured into an 8-branch tree for each divided area. The dividing unit 13 sets data A as old data and sets data B as updated data according to the instruction inputted by the input unit 12.

分割部13は、データA及びデータBが分割領域ごとに8分木構造化されたデータではない場合、旧データ及び更新データをそれぞれ、分割領域に分割する(ステップS120)。変換部14は、データAを、分割領域ごとに8分木構造化された木構造データに変換する。同様に、変換部14は、データBを、分割領域ごとに8分木構造化された木構造データに変換する。変換部14は、各分割領域の木構造データに、その分割領域の大きさや位置などを示すヘッダ情報を付加する。分割領域の位置は、例えば、相対座標系に変換する前の座標系における座標値により表される。 If the data A and data B are not data that has an 8-ary tree structure for each divided area, the dividing unit 13 divides the old data and the updated data into divided areas, respectively (step S120). The conversion unit 14 converts the data A into tree-structured data that is structured into an 8-ary tree for each divided region. Similarly, the conversion unit 14 converts data B into tree-structured data that is structured into an 8-branch tree for each divided region. The conversion unit 14 adds header information indicating the size, position, etc. of the divided area to the tree structure data of each divided area. The position of the divided area is expressed, for example, by coordinate values in the coordinate system before conversion to the relative coordinate system.

置換部15は、更新データが表現する現実空間と対応する旧データの分割領域を、更新データの分割領域に置き換える(ステップS130)。境界決定部16は、旧データが存在する分割領域のうち、更新データと一部又は全て重なる分割領域を処理対象分割領域とする。境界決定部16は、処理対象分割領域毎にマージ境界を決定する。マージ部17は、境界決定部16が決定したマージ境界に従って、旧データに更新データをマージする(ステップS140)。 The replacement unit 15 replaces the divided area of the old data corresponding to the real space expressed by the updated data with the divided area of the updated data (step S130). The boundary determination unit 16 sets a divided area that partially or completely overlaps the updated data as a processing target divided area among the divided areas where the old data exists. The boundary determining unit 16 determines a merge boundary for each divided region to be processed. The merging unit 17 merges the updated data with the old data according to the merging boundary determined by the boundary determining unit 16 (step S140).

図6は、マージ領域検出装置1のマージ境界決定処理を示すフロー図である。図6は、図5のステップS140の処理の詳細を示す。境界決定部16は、処理対象分割領域それぞれについて、図6の処理を行う。 FIG. 6 is a flow diagram showing the merge boundary determination process of the merge area detection device 1. FIG. 6 shows details of the process of step S140 in FIG. The boundary determination unit 16 performs the process shown in FIG. 6 for each divided area to be processed.

まず、境界決定部16は、更新データの各分割領域の木構造データに基づいて、処理対象分割領域に隣接する分割領域全てに更新データが存在するか否かを判断する(ステップS210)。境界決定部16は、処理対象分割領域に隣接する分割領域全てに更新データが存在するか否かを、木構造データに代えて、分割領域の木構造データに付加された、分割領域の大きさや位置などを示すヘッダ情報に基づいて判断してもよい。境界決定部16は、処理対象分割領域に隣接する全ての分割領域に更新データが存在すると判断した場合(ステップS210:YES)、処理対象分割領域を全て更新データに置き換えると判断する。置換部15に処理対象分割領域の情報を通知する。置換部15は、更新データの処理対象分割領域を全て、その処理対象分割領域の更新データに置き換える(ステップS220)。 First, the boundary determination unit 16 determines whether update data exists in all divided regions adjacent to the processing target divided region, based on the tree structure data of each divided region of the update data (step S210). The boundary determination unit 16 determines whether update data exists in all the divided regions adjacent to the divided region to be processed, using the size of the divided region and the tree-structured data of the divided region, instead of the tree-structured data. The determination may be made based on header information indicating the location or the like. If the boundary determination unit 16 determines that update data exists in all the divided regions adjacent to the divided region to be processed (step S210: YES), it determines to replace all the divided regions to be processed with updated data. Information on the processing target divided area is notified to the replacement unit 15. The replacement unit 15 replaces all the processing target divided regions of the update data with the update data of the processing target divided regions (step S220).

境界決定部16は、処理対象分割領域に隣接する分割領域に、更新データがない分割領域があると判断した場合(ステップS210:NO)、ステップS230の処理を行う。境界決定部16は、ユーザが設定した階層の情報を取得する(ステップS230)。ユーザが設定する階層は、更新対象領域を決定する処理の対象となる階層である。この階層は、図4に示す木構造の階層に相当する。境界決定部16は、階層の情報を記憶部11から読み出してもよく、入力部12により入力された階層の情報を取得してもよい。ユーザが設定した階層が、階層N1(N1は1以上の整数)から階層N2(N2はN1以上の整数)までであるとする。 If the boundary determination unit 16 determines that there is a divided region adjacent to the processing target divided region that has no update data (step S210: NO), it performs the process of step S230. The boundary determining unit 16 acquires information on the hierarchy set by the user (step S230). The hierarchy set by the user is the hierarchy that is the target of the process of determining the update target area. This hierarchy corresponds to the tree structure hierarchy shown in FIG. The boundary determination unit 16 may read the hierarchy information from the storage unit 11 or may acquire the hierarchy information input by the input unit 12. It is assumed that the hierarchy set by the user is from hierarchy N1 (N1 is an integer of 1 or more) to hierarchy N2 (N2 is an integer of N1 or more).

境界決定部16は、処理対象の階層nを階層N1とする(ステップS240)。境界決定部16は、更新データの各分割領域の木構造データに付与されているヘッダ情報に基づいて、処理対象分割領域と、更新データがない隣接の分割領域との境界を特定する。境界決定部16は、特定された境界を、初期値のマージ境界とする(ステップS250)。 The boundary determining unit 16 sets the processing target layer n to the layer N1 (step S240). The boundary determining unit 16 identifies the boundary between the processing target divided area and an adjacent divided area that does not have update data, based on the header information added to the tree structure data of each divided area of the update data. The boundary determination unit 16 sets the specified boundary as the initial value merge boundary (step S250).

境界決定部16は、更新データが示す処理対象分割領域の木構造データを参照して、階層nの各ブロックBnが更新データの領域を含むか否か判定する。境界決定部16は、更新データの木構造データに、ブロックBnが点を有することが設定されている場合に、そのブロックBnが更新データの領域を含むと判定する。一方、境界決定部16は、更新データの木構造データに、ブロックBnが点を有していないことが設定されている場合に、そのブロックBnが更新データの領域を含んでいないと判定する。なお、更新データがない領域は、点群が測定されなかった領域であるか、測定されたが点が検出されなかった領域であるかの区別はつかない。境界決定部16は、更新データの領域を含むブロックBnに「1」を付与し、更新データの領域を含まないブロックBnに「0」を付与する。 The boundary determining unit 16 refers to the tree structure data of the processing target divided area indicated by the update data, and determines whether each block Bn of layer n includes the area of the update data. The boundary determining unit 16 determines that the block Bn includes the area of the update data when it is set in the tree structure data of the update data that the block Bn has a point. On the other hand, if it is set in the tree structure data of the update data that the block Bn does not have a point, the boundary determination unit 16 determines that the block Bn does not include the area of the update data. Note that it is not possible to distinguish between areas where there is no updated data, whether the point cloud is not measured, or where the point group is measured but no points are detected. The boundary determining unit 16 assigns "1" to a block Bn that includes an area for updated data, and assigns "0" to a block Bn that does not include an area for updated data.

境界決定部16は、マージ境界の初期値を先頭とする処理対象分割領域内のブロックBnの列それぞれについて、1が付与されている最初のブロックBnを検出する。境界決定部16は、列ごとに、その列のマージ境界を、検出されたブロックBnと、検出されたブロックBnと同じ列のマージ境界側に隣接するブロックBnとの境界に移動する(ステップS260)。この移動により、隣接する列の間でマージ境界が不連続となる場合、境界決定部16は、それら不連続となったマージ境界間を、ブロックBnの境界に沿うように結ぶ。 The boundary determination unit 16 detects the first block Bn to which 1 is assigned for each row of blocks Bn in the processing target divided area starting from the initial value of the merge boundary. For each column, the boundary determining unit 16 moves the merge boundary of that column to the boundary between the detected block Bn and the block Bn adjacent to the merge boundary side of the same column as the detected block Bn (step S260 ). When the merge boundaries between adjacent columns become discontinuous due to this movement, the boundary determination unit 16 connects the discontinuous merge boundaries along the boundary of block Bn.

境界決定部16は、現在の処理対象の階層nが、階層の下限N2に達していない場合、次の階層があると判断する(ステップS270:YES)。境界決定部16は、処理対象の階層nを、現在の処理対象の階層nの一つ下の階層(n+1)に更新する(ステップS280)。境界決定部16は、ステップS260からの処理を繰り返す。 If the current processing target hierarchy n has not reached the lower limit N2 of the hierarchy, the boundary determination unit 16 determines that there is a next hierarchy (step S270: YES). The boundary determining unit 16 updates the processing target hierarchy n to the hierarchy (n+1) that is one level below the current processing target hierarchy n (step S280). The boundary determining unit 16 repeats the processing from step S260.

上記のように境界決定部16は、ステップS260~ステップS280の処理を繰り返す。そして、境界決定部16は、処理対象の階層nが、階層の下限N2に達したと判定した場合(ステップS270:NO)、処理対象分割領域と、マージ境界とをマージ部17に通知する。マージ部17は、旧データの処理対象分割領域内のブロックのうち、決定したマージ境界よりも、更新データが存在する隣接の分割領域に近いブロックを、そのブロックの更新データに置き換える(ステップS290)。置き換えは、点群により行ってもよく、木構造データにおける対象箇所を置き換えることにより行ってもよい。 As described above, the boundary determining unit 16 repeats the processing from step S260 to step S280. When the boundary determining unit 16 determines that the hierarchy n to be processed has reached the lower limit N2 of the hierarchy (step S270: NO), the boundary determining unit 16 notifies the merging unit 17 of the divided area to be processed and the merging boundary. The merging unit 17 replaces, among the blocks within the processing target divided area of the old data, a block closer to the adjacent divided area where updated data exists than the determined merge boundary with the updated data of that block (step S290). . The replacement may be performed using a point group or by replacing the target location in the tree structure data.

図7~図10を用いて、図6の処理を説明する。図7~図10では、簡単のため、分割領域及び各ブロックを平面で表している。 The process in FIG. 6 will be explained using FIGS. 7 to 10. In FIGS. 7 to 10, the divided regions and each block are represented by planes for simplicity.

図7は、処理対象分割領域と隣接の分割領域とを示す図である。処理対象分割領域D1と、処理対象分割領域D1に隣接する分割領域D2~D5とはそれぞれ、図3におけるブロックB0に相当する。図7(a)は、処理対象分割領域D1に隣接する分割領域全てに、更新データが存在する場合を示している。この場合、境界決定部16は、旧データの処理対象分割領域D1全てを、更新データの処理対象分割領域D1で置き換えると判断する(ステップS210:YES、ステップS220)。 FIG. 7 is a diagram showing a processing target divided area and an adjacent divided area. The processing target divided region D1 and the divided regions D2 to D5 adjacent to the processing target divided region D1 each correspond to block B0 in FIG. 3. FIG. 7A shows a case where update data exists in all divided regions adjacent to the processing target divided region D1. In this case, the boundary determining unit 16 determines that all the processing target divided regions D1 of the old data are replaced with the processing target divided regions D1 of the updated data (step S210: YES, step S220).

図7(b)は、処理対象分割領域D1に隣接する分割領域に、更新データがない分割領域がある場合を示している。図7(b)では、隣接する分割領域D4及びD5には、更新データがある。しかし、隣接する分割領域D2及びD3には、更新データがない。この場合、境界決定部16は、処理対象分割領域D1について、ステップS230以降の処理を行う。 FIG. 7B shows a case where there is a divided region adjacent to the processing target divided region D1 that does not have update data. In FIG. 7B, update data exists in adjacent divided areas D4 and D5. However, there is no updated data in adjacent divided areas D2 and D3. In this case, the boundary determining unit 16 performs the processing from step S230 on the processing target divided region D1.

図8~図10は、処理対象分割領域D1におけるマージ境界の決定を説明するための図である。図6のステップS230において取得した階層N1が1、階層N2が3である場合を説明する。境界決定部16は、処理対象の階層nをN1(=1)とする(図6のステップS240)。 FIGS. 8 to 10 are diagrams for explaining the determination of the merge boundary in the processing target divided region D1. The case where the hierarchy N1 acquired in step S230 of FIG. 6 is 1 and the hierarchy N2 is 3 will be described. The boundary determination unit 16 sets the processing target layer n to N1 (=1) (step S240 in FIG. 6).

図8は、階層nが1の場合の処理を示す。領域Eは、更新データが得られている領域を表す。処理対象分割領域D1において、更新データの領域Eに含まれない領域は、旧データはあるが、更新データが得られていない領域である。 FIG. 8 shows the process when the hierarchy n is 1. Area E represents an area where updated data is obtained. In the processing target divided area D1, an area that is not included in the updated data area E is an area where old data is present but updated data is not obtained.

処理対象分割領域D1に隣接する分割領域のうち、分割領域D2及び分割領域D3には更新データが存在しない。そこで、境界決定部16は、処理対象分割領域D1と分割領域D2、D3との間の境界を、初期値のマージ境界Rとする(図6のステップS250)。 Among the divided regions adjacent to the processing target divided region D1, update data does not exist in the divided region D2 and divided region D3. Therefore, the boundary determining unit 16 sets the boundary between the processing target divided region D1 and the divided regions D2 and D3 as the initial value merging boundary R (step S250 in FIG. 6).

次に、境界決定部16は、更新データの木構造データを参照して、処理対象分割領域D1における階層1のブロックB1-iそれぞれが、更新データの点を含むか否か判定する。なお、図8には、階層1の4つのブロックB1-0~B1-3が示されている。 Next, the boundary determining unit 16 refers to the tree structure data of the update data and determines whether each block B1-i of the hierarchy 1 in the processing target divided region D1 includes a point of the update data. Note that FIG. 8 shows four blocks B1-0 to B1-3 of layer 1.

境界決定部16は、更新データの点が含まれるブロックB1-iに1を付与し、更新データの点が含まれないブロックB1-iに0を付与する。境界決定部16は、マージ境界Rの初期値を先頭とする各ブロックB1-iの列それぞれについて、1が付与されている最初のブロックB1-iを検出する。つまり、境界決定部16は、各列において、値が1のブロックB1-iのうち、最も現在の(初期値の)マージ境界Rに近いブロックを検出する。 The boundary determination unit 16 assigns 1 to the block B1-i that includes the updated data point, and assigns 0 to the block B1-i that does not include the updated data point. The boundary determining unit 16 detects the first block B1-i to which 1 is assigned for each column of blocks B1-i starting from the initial value of the merge boundary R. That is, the boundary determining unit 16 detects the block closest to the current (initial value) merging boundary R among the blocks B1-i whose value is 1 in each column.

境界決定部16は、縦の列L1を構成するブロックB1-3、B1-2の両方とも値が1であるため、現在のマージ境界Rに近いブロックB1-3を検出する。境界決定部16は、検出したブロックB1-3にマージ境界Rが含まれるため、列L1についてはマージ境界Rを移動しない(図6のステップS260)。 The boundary determining unit 16 detects the block B1-3 that is close to the current merge boundary R, since both blocks B1-3 and B1-2 forming the vertical column L1 have a value of 1. Since the detected block B1-3 includes the merge boundary R, the boundary determination unit 16 does not move the merge boundary R for the column L1 (step S260 in FIG. 6).

境界決定部16は、縦の列L2を構成するブロックB1-1、B1-0の両方の値が1であるため、現在のマージ境界Rに近いブロックB1-1を検出する。境界決定部16は、検出したブロックB1-1にマージ境界Rが含まれるため、列L2についてはマージ境界Rを移動しない(図6のステップS260)。 The boundary determining unit 16 detects the block B1-1 that is close to the current merge boundary R because the values of both blocks B1-1 and B1-0 constituting the vertical column L2 are 1. Since the detected block B1-1 includes the merge boundary R, the boundary determining unit 16 does not move the merge boundary R for the column L2 (step S260 in FIG. 6).

境界決定部16は、横の列L3を構成するブロックB1-3、B1-1の両方の値が1であるため、現在のマージ境界Rに近いブロックB1-3を検出する。境界決定部16は、検出したブロックB1-3にマージ境界Rが含まれるため、列L3についてはマージ境界Rを移動しない(図6のステップS260)。 The boundary determination unit 16 detects the block B1-3 that is close to the current merge boundary R because the values of both blocks B1-3 and B1-1 constituting the horizontal column L3 are 1. Since the detected block B1-3 includes the merge boundary R, the boundary determination unit 16 does not move the merge boundary R for the column L3 (step S260 in FIG. 6).

境界決定部16は、横の列L4を構成するブロックB1-2、B1-0の値が両方1であるため、現在のマージ境界Rに近いブロックB1-2を検出する。境界決定部16は、検出したブロックB1-2にマージ境界Rが含まれるため、列L4についてはマージ境界Rを移動しない(図6のステップS260)。 Since the values of blocks B1-2 and B1-0 constituting the horizontal column L4 are both 1, the boundary determining unit 16 detects the block B1-2 that is close to the current merge boundary R. Since the detected block B1-2 includes the merge boundary R, the boundary determination unit 16 does not move the merge boundary R for the column L4 (step S260 in FIG. 6).

境界決定部16は、処理対象の階層nは階層の下限2に達していないため(ステップS270:YES)、処理対象の階層nを現在の1よりも一つ上の階層2とする(図6のステップS280)。 Since the layer n to be processed has not reached the lower limit 2 of the hierarchy (step S270: YES), the boundary determination unit 16 sets the layer n to be processed to layer 2, which is one level higher than the current level 1 (FIG. 6 step S280).

図9は、階層nが2の場合の処理を示す。境界決定部16は、更新データの木構造データを参照して、処理対象分割領域D1における階層2のブロックB2-i-jそれぞれが、更新データの点を含むか否か判定する。なお、境界決定部16は、判定の対象を、一つ上の階層である階層1において境界を含むブロックB1-1、B1-2、B1-3の子ブロックに限定してもよい。 FIG. 9 shows the process when the hierarchy n is 2. The boundary determination unit 16 refers to the tree structure data of the update data and determines whether each of the blocks B2-ij of the second layer in the processing target divided region D1 includes a point of the update data. Note that the boundary determination unit 16 may limit the determination target to child blocks of blocks B1-1, B1-2, and B1-3 that include boundaries in layer 1, which is the layer one higher.

境界決定部16は、更新データの点が含まれるブロックB2-i-jに1を付与し、更新データの点が含まれないブロックB2-i-jに0を付与する。境界決定部16は、マージ境界Rの初期値を先頭とするブロックB2-i-jの列それぞれについて、1が付与されている最初のブロックB2-i-jを検出する。つまり、境界決定部16は、各列において、値が1のブロックB2-i-jのうち、最も現在のマージ境界Rに近いブロックを検出する。 The boundary determining unit 16 assigns 1 to blocks B2-ij that include update data points, and assigns 0 to blocks B2-ij that do not include update data points. The boundary determining unit 16 detects the first block B2-ij to which 1 is assigned for each row of blocks B2-ij starting from the initial value of the merge boundary R. In other words, the boundary determining unit 16 detects the block closest to the current merge boundary R among the blocks B2-ij having a value of 1 in each column.

境界決定部16は、縦の列L11を構成するブロックB2-3-3、B2-3-2、B2-2-3、B2-2-2のうち、値が1のブロックB2-2-3を検出する。境界決定部16は、列L11において、ブロックB2-2-3と、ブロックB2-2-3のマージ境界R側に隣接するブロックB2-3-2との境界に、マージ境界Rを移動する(図6のステップS260)。 The boundary determining unit 16 selects a block B2-2-3 having a value of 1 among blocks B2-3-3, B2-3-2, B2-2-3, and B2-2-2 that constitute the vertical column L11. Detect. The boundary determining unit 16 moves the merge boundary R to the boundary between the block B2-2-3 and the block B2-3-2 adjacent to the merge boundary R side of the block B2-2-3 in the column L11 ( Step S260 in FIG. 6).

同様に、境界決定部16は、縦の列L12において、値が1のブロックのうち、最も現在のマージ境界Rに近いブロックB2-3-0を検出する。境界決定部16は、検出したブロックB2-3-0と、ブロックB2-3-0の現在のマージ境界R側に隣接するブロックB2-3-1との境界に、マージ境界Rを移動する(図6のステップS260)。 Similarly, the boundary determining unit 16 detects the block B2-3-0 closest to the current merge boundary R among the blocks having a value of 1 in the vertical column L12. The boundary determining unit 16 moves the merge boundary R to the boundary between the detected block B2-3-0 and the block B2-3-1 adjacent to the current merge boundary R side of the block B2-3-0 ( Step S260 in FIG. 6).

同様に、境界決定部16は、ブロックB2-1-3が先頭の縦の列L13において、値が1のブロックのうち、最も現在のマージ境界Rに近いブロックB2-1-3を検出する。また、境界決定部16は、ブロックB2-1-1が先頭の縦の列L14において、値が1のブロックのうち、最も現在のマージ境界Rに近いブロックB2-1-1を検出する。境界決定部16は、検出したブロックB2-1-3、B2-1-1に現在のマージ境界Rが含まれるため、列L13、列L14についてはマージ境界Rを移動しない(図6のステップS260)。 Similarly, the boundary determining unit 16 detects the block B2-1-3 closest to the current merge boundary R among the blocks having a value of 1 in the vertical column L13 where block B2-1-3 is the first block. In addition, the boundary determining unit 16 detects the block B2-1-1 closest to the current merge boundary R among the blocks having a value of 1 in the vertical column L14 where the block B2-1-1 is the first block. Since the current merge boundary R is included in the detected blocks B2-1-3 and B2-1-1, the boundary determination unit 16 does not move the merge boundary R for columns L13 and L14 (step S260 in FIG. 6). ).

境界決定部16は、ブロックB2-3-3が先頭の横の列L15において、値が1のブロックのうち、最も現在のマージ境界Rに近いブロックB2-1-3を検出する。境界決定部16は、検出したブロックB2-1-3と、ブロックB2-1-3の現在のマージ境界R側に隣接するブロックB2-3-1との境界に、マージ境界Rを移動する(図6のステップS260)。境界決定部16は、横の列L16~L18についても、上記と同様の処理を行う。 The boundary determination unit 16 detects the block B2-1-3 closest to the current merge boundary R among the blocks having a value of 1 in the horizontal column L15 where block B2-3-3 is the first block. The boundary determining unit 16 moves the merge boundary R to the boundary between the detected block B2-1-3 and the block B2-3-1 adjacent to the current merge boundary R side of the block B2-1-3 ( Step S260 in FIG. 6). The boundary determining unit 16 also performs the same process as above for the horizontal columns L16 to L18.

上記の処理により、横の列L17のマージ境界Rは初期値のままとなるが、横の列L18のマージ境界Rは、ブロックB2-2-2とブロックB2-2-0との間となる。これらマージ境界Rは不連続なため、境界決定部16は、列L17のマージ境界Rと列L18のマージ境界Rとを結ぶ。 Through the above processing, the merge boundary R of horizontal column L17 remains at the initial value, but the merge boundary R of horizontal column L18 becomes between block B2-2-2 and block B2-2-0. . Since these merge boundaries R are discontinuous, the boundary determining unit 16 connects the merge boundary R of column L17 and the merge boundary R of column L18.

境界決定部16は、処理対象の階層nは階層の下限3に達していないため(ステップS270:YES)、処理対象の階層nを現在より一つ上の階層3とする(図6のステップS280)。 Since the layer n to be processed has not reached the lower limit 3 of the hierarchy (step S270: YES), the boundary determination unit 16 sets the layer n to be processed to layer 3 one higher than the current level (step S280 in FIG. 6). ).

図10は、階層nが3の場合の処理を示す。境界決定部16は、更新データの木構造データを参照して、処理対象分割領域D1における階層3のブロックそれぞれが、更新データの点を含むか否か判定する。境界決定部16は、判定の対象を、一つ上の階層である階層2において境界を含むブロックB2-1-4、B2-2-1、B2-2-3、B2-2-4、B2-3-1、B2-3-2、B2-3-3の子ブロックに限定してもよい。 Figure 10 shows the processing when hierarchical level n is 3. The boundary determination unit 16 refers to the tree structure data of the update data and determines whether each block of hierarchical level 3 in the processing target division area D1 contains a point of the update data. The boundary determination unit 16 may limit the objects of the determination to child blocks of blocks B2-1-4, B2-2-1, B2-2-3, B2-2-4, B2-3-1, B2-3-2, B2-3-3 that contain a boundary in hierarchical level 2, which is the next higher hierarchical level.

境界決定部16は、第3階層のブロックのうち、更新データの点が含まれるブロックに1を付与し、更新データの点が含まれないブロックに0を付与する。境界決定部16は、第3階層のブロックに付与した値を用いて、図9と同様の処理を行い、マージ領域Rを移動する(図6のステップS260)。境界決定部16は、処理対象としている階層nが、階層の下限3に達したと判定する(図6のステップS270:NO)。 The boundary determination unit 16 assigns 1 to blocks that include update data points among the blocks of the third layer, and assigns 0 to blocks that do not include update data points. The boundary determining unit 16 performs the same process as in FIG. 9 using the values assigned to the blocks in the third hierarchy, and moves the merge region R (step S260 in FIG. 6). The boundary determination unit 16 determines that the layer n to be processed has reached the lower limit 3 of the layers (step S270 in FIG. 6: NO).

マージ部17は、旧データの処理対象分割領域のブロックのうち、決定したマージ境界よりも更新データ側のブロックを、更新データのそのブロックに置き換える(図6のステップS290)。 The merging unit 17 replaces a block on the update data side with respect to the determined merge boundary among the blocks in the processing target divided area of the old data with that block of the update data (step S290 in FIG. 6).

なお、境界決定部16は、図6に示す処理に代えて、図11に示す処理を行ってもよい。図11は、マージ領域検出装置1のマージ境界決定処理を示すフロー図である。図11において図6と同一の処理には同一の符号を付し、その説明を省略する。図11に示す処理が、図6に示す処理と異なる点は、ステップS290の処理の前に、ステップS310の処理を行う点である。ステップS310において、境界決定部16は、マージ境界を、更新データがある領域の方向へ1ブロック分移動させる。 Note that the boundary determining unit 16 may perform the process shown in FIG. 11 instead of the process shown in FIG. 6. FIG. 11 is a flow diagram showing the merge boundary determination process of the merge area detection device 1. In FIG. 11, the same processes as those in FIG. 6 are denoted by the same reference numerals, and their explanations will be omitted. The process shown in FIG. 11 differs from the process shown in FIG. 6 in that the process in step S310 is performed before the process in step S290. In step S310, the boundary determining unit 16 moves the merge boundary by one block toward the area where the updated data is located.

図12は、図10に示すように決定されたマージ境界Rに対して、境界決定部16が、図11のステップS310の処理を行った例を示す図である。図12に示すように、境界決定部16は、図10に示すマージ境界Rを、更新データEの方向に1ブロック分移動させている。 FIG. 12 is a diagram showing an example in which the boundary determining unit 16 performs the process of step S310 in FIG. 11 on the merge boundary R determined as shown in FIG. 10. As shown in FIG. 12, the boundary determination unit 16 moves the merge boundary R shown in FIG. 10 by one block in the direction of the update data E.

図6に示す処理(処理Aと記載)と、図11に示す処理(処理Bと記載)とは、マージ境界を更新データのぎりぎりよりも外側にするか少し内側にするかの違いである。処理Aの場合、更新データを全て残した形でのマージが可能となる。一方、更新データは境界の内側に隣接するブロック内ではその一部のみに存在する可能性があり、このブロックに関する点群が疎になる恐れがある。これは、ステップS290によるマージ後、図10における斜線のブロック内の領域Eの外の部分には、点が含まれないことによる。処理Bでは、マージ境界には旧データを用いて、それより内側の確実にブロック全体に更新データが存在するであろう領域のみを更新データで埋める。これにより、境界が疎になることを避けられる可能性がある。 The difference between the process shown in FIG. 6 (described as process A) and the process shown in FIG. 11 (described as process B) is whether the merge boundary is placed outside or slightly inside the updated data. In the case of process A, merging can be performed with all updated data remaining. On the other hand, there is a possibility that the update data exists only in a part of the block adjacent to the inside of the boundary, and the point group regarding this block may become sparse. This is because, after merging in step S290, no points are included in the portion outside area E within the diagonally shaded block in FIG. In process B, the old data is used at the merge boundary, and only the area inside the merge boundary where the updated data is sure to exist in the entire block is filled with the updated data. This may prevent boundaries from becoming sparse.

なお、上記では、マージ領域検出装置1は、旧データに対して、更新データにより更新する対象領域を抽出している。そして、マージ領域検出装置1は、旧データと更新データとをマージする際に、旧データの領域のうち更新データが含まれない領域を検出し、その検出した領域に旧データを残して更新データを足し合わせる。しかし、マージ領域検出装置1は、旧データに対して、更新しない領域を抽出してもよい。その場合、置換部15は、ステップS120において、旧データの分割領域のうち、更新データが存在しない分割領域を特定する。置換部15は、特定した分割領域を更新データに付加し、付加した分割領域を、その分割領域の旧データに置き換える。そして、ステップS220において、置換部15は、処理対象分割領域を更新データのままとする。ステップS290において、マージ部17は、更新データの処理対象分割領域のブロックのうち、決定したマージ境界よりも旧データ側のブロックを、旧データの同じ位置のブロックに置き換える。 Note that in the above, the merge area detection device 1 extracts a target area to be updated with update data from old data. Then, when merging the old data and the updated data, the merge area detection device 1 detects an area that does not include the updated data among the areas of the old data, leaves the old data in the detected area, and stores the updated data. Add together. However, the merge area detection device 1 may extract areas that will not be updated from the old data. In that case, in step S120, the replacement unit 15 identifies a divided area in which updated data does not exist among the divided areas of old data. The replacement unit 15 adds the specified divided area to the updated data, and replaces the added divided area with the old data of the divided area. Then, in step S220, the replacement unit 15 leaves the processing target divided region as the updated data. In step S290, the merging unit 17 replaces, among the blocks of the divided area to be processed of the update data, a block on the old data side with respect to the determined merging boundary with a block in the same position of the old data.

(第2の実施形態)
第1の実施形態においては、旧データと更新データをマージする領域を3次元的に判定している。第2の実施形態では、z軸(地面に垂直な軸)方向に点を射影し、マージする領域を2次元的に判定する。これにより、マージ領域検出装置の処理を軽量化及び単純化できる。第2の実施形態を、第1の実施形態との差分を中心に説明する。
Second Embodiment
In the first embodiment, the area in which the old data and the updated data are merged is determined three-dimensionally. In the second embodiment, points are projected in the z-axis direction (axis perpendicular to the ground) and the area in which the data is merged is determined two-dimensionally. This makes it possible to reduce and simplify the processing of the merge area detection device. The second embodiment will be described focusing on the differences from the first embodiment.

図13は、第2の実施形態によるマージ領域検出装置2の構成を示すブロック図である。図13において、図1に示す第1の実施形態によるマージ領域検出装置1と同一の部分には同一の符号を付し、その説明を省略する。マージ領域検出装置2が図1に示すマージ領域検出装置1と異なる点は、変換部14及び境界決定部16に代えて変換部24及び境界決定部26を備える点である。 FIG. 13 is a block diagram showing the configuration of a merge area detection device 2 according to the second embodiment. In FIG. 13, the same parts as those of the merge area detection device 1 according to the first embodiment shown in FIG. 1 are denoted by the same reference numerals, and the description thereof will be omitted. The merge region detection device 2 differs from the merge region detection device 1 shown in FIG.

変換部24は、変換部14と同様の処理を行う。さらに、変換部24は、分割領域と、その分割領域に含まれる更新データの各点とを2次元平面に射影する。変換部24は、2次元の分割領域毎に、その分割領域に射影された点群データを、4分木データにより表した木構造データを生成する。境界決定部26は、旧データと更新データとが重なる分割領域について、2次元平面に変換された更新データを用いてマージ境界を定める。 The converter 24 performs the same processing as the converter 14. Further, the conversion unit 24 projects the divided regions and each point of the update data included in the divided regions onto a two-dimensional plane. For each two-dimensional divided area, the conversion unit 24 generates tree structure data representing the point cloud data projected onto the divided area using quadtree data. The boundary determining unit 26 determines a merging boundary for a divided region where old data and updated data overlap, using updated data converted into a two-dimensional plane.

図14及び図15を用いて、2次元平面に射影した点の木構造データを算出する例を説明する。これらの図は、z軸方向への射影を示す。 An example of calculating tree structure data of points projected onto a two-dimensional plane will be described with reference to FIGS. 14 and 15. These figures show projections in the z-axis direction.

図14は、8分木データから、4分木データへの変換を説明するための図である。ノードN-0~N-7は、それぞれ、図2に示すブロックBの子ブロックであるブロックB-0~B-7に相当する。図14では、ブロックB-2及びB-3のみに点が存在する。よって、ノードN-2は、ノードN-2の子ブロックであるブロックB-2-0~B-2-7のそれぞれに対応したノードB-2-0~B-2-7と接続される。同様に、ノードN-3は、ノードN-3の子ブロックであるブロックB-3-0~B-3-7のそれぞれに対応したノードB-3-0~B-3-7と接続される。各ノードには、点があるか場合には「1」が、点がない場合には「0」が付与されている。 FIG. 14 is a diagram for explaining the conversion from 8-ary tree data to 4-ary tree data. Nodes N-0 to N-7 correspond to blocks B-0 to B-7, which are child blocks of block B shown in FIG. 2, respectively. In FIG. 14, points exist only in blocks B-2 and B-3. Therefore, node N-2 is connected to nodes B-2-0 to B-2-7 corresponding to blocks B-2-0 to B-2-7, which are child blocks of node N-2, respectively. . Similarly, node N-3 is connected to nodes B-3-0 to B-3-7 corresponding to blocks B-3-0 to B-3-7, which are child blocks of node N-3. Ru. Each node is assigned a "1" if it has a point, and a "0" if it does not have a point.

変換部24は、z軸方向に重なっているブロックそれぞれに対応したノードの値の論理和を計算する。図2に示すように、ブロックB-0及びブロックB-1、ブロックB-2及びブロックB-3、ブロックB-4及びブロックB-5、ブロックB-6及びブロックB-7がそれぞれ、z軸方向に重なっている。変換部24は、z軸方向に重なっているブロックB-0とブロックB-1とを射影した平面のブロック値を、ノードN-1の値とノードN-2の値との論理和とする。同様に、変換部24は、z軸方向に重なっているブロックB-2とブロックB-3とを射影した平面のブロック値を、ノードN-2の値とノードN-3の値との論理和とする。このとき、変換部24は、同じ位置の子ブロックに対応したノードN-2-jの値と、ノードN-3-jの値との論理和を算出する。変換部24は、得られた論理和に対して、z軸方向に重なっているブロックを射影した平面のブロック値を算出する処理を行う。 The conversion unit 24 calculates the logical sum of the values of the nodes corresponding to the blocks overlapping in the z-axis direction. As shown in FIG. 2, block B-0 and block B-1, block B-2 and block B-3, block B-4 and block B-5, block B-6 and block B-7 are respectively z They overlap in the axial direction. The conversion unit 24 logically ORs the block value of the plane obtained by projecting block B-0 and block B-1, which overlap in the z-axis direction, with the value of node N-1 and the value of node N-2. . Similarly, the conversion unit 24 converts the block value of the plane obtained by projecting block B-2 and block B-3, which overlap in the z-axis direction, into the logic between the value of node N-2 and the value of node N-3. Make it the sum. At this time, the conversion unit 24 calculates the logical sum of the value of the node N-2-j and the value of the node N-3-j corresponding to the child block at the same position. The conversion unit 24 performs a process of calculating a block value of a plane obtained by projecting overlapping blocks in the z-axis direction on the obtained logical sum.

図15は、2次元平面に射影した点の座標を用いて木構造データを生成する例を説明するための図である。図15(a)に示すように、変換部24は、点群データに含まれる各点の3次元座標値からz軸座標の値を除き、xy平面の座標に変換する。図15(b)は、z軸方向に重なっている3次元の分割領域をxy平面に射影した分割領域を示す図である。変換部24は、分割領域を、互いに直交する2方向(x軸,y軸)のそれぞれで2等分することにより、4個の子ブロックを生成する。変換部24は、生成された子ブロックを親ブロックとし、親ブロックから4個の子ブロックを生成する処理を繰り返す。変換部24は、射影された点の座標を用いて、階層化された平面の各ブロックに対応した木構造のノードを生成する。変換部24は、点を含むブロックに対応したノードについては、そのブロックを親ブロックとする子ブロックのそれぞれが点を含むか否かを表したブロック値を付与し、4分木データを作成する。 FIG. 15 is a diagram for explaining an example of generating tree structure data using the coordinates of points projected onto a two-dimensional plane. As shown in FIG. 15(a), the conversion unit 24 removes the z-axis coordinate value from the three-dimensional coordinate value of each point included in the point cloud data, and converts it into the coordinate of the xy plane. FIG. 15(b) is a diagram showing divided regions obtained by projecting three-dimensional divided regions overlapping in the z-axis direction onto the xy plane. The conversion unit 24 generates four child blocks by dividing the divided region into two equal parts in each of two mutually orthogonal directions (x-axis, y-axis). The conversion unit 24 uses the generated child block as a parent block and repeats the process of generating four child blocks from the parent block. The conversion unit 24 uses the coordinates of the projected points to generate nodes in a tree structure corresponding to each block of the hierarchical plane. For nodes corresponding to blocks containing points, the conversion unit 24 creates quadtree data by assigning a block value indicating whether or not each child block whose parent block is the block contains points. .

マージ領域検出装置2は、図5の処理を行う。マージ領域検出装置2は、図5のステップS140において、図6に示す処理に代えて、図16に示す処理を行う。 The merge area detection device 2 performs the process shown in FIG. In step S140 of FIG. 5, the merge area detection device 2 performs the process shown in FIG. 16 instead of the process shown in FIG.

図16は、マージ領域検出装置2のマージ境界決定処理を示すフロー図である。図16において図6と同一の処理には同一の符号を付し、その説明を省略する。図16に示す処理が、図6に示す処理と異なる点は、マージ領域検出装置2が、ステップS230の処理の前に、ステップS410の処理を行う点である。ステップS410において、変換部24は、更新データの点群データをz軸方向に射影し、2次元平面の点群とする。変換部24は、処理対象分割領域を射影した平面上の点群データの4分木データを生成する。そして、マージ領域検出装置2の境界決定部26は、ステップS250、ステップS260及びステップS280の処理を、生成された4分木データを用いて行う。 FIG. 16 is a flow diagram showing the merge boundary determination process of the merge area detection device 2. In FIG. 16, the same processes as those in FIG. 6 are denoted by the same reference numerals, and their explanations will be omitted. The process shown in FIG. 16 differs from the process shown in FIG. 6 in that the merge area detection device 2 performs the process in step S410 before the process in step S230. In step S410, the conversion unit 24 projects the point cloud data of the update data in the z-axis direction to form a point cloud on a two-dimensional plane. The conversion unit 24 generates quadtree data of point cloud data on a plane onto which the divided regions to be processed are projected. Then, the boundary determining unit 26 of the merge region detection device 2 performs the processes of step S250, step S260, and step S280 using the generated quadtree data.

ステップS290において、マージ部17は、旧データの処理対象分割領域のブロックのうち、決定したマージ境界よりも、更新データが存在する隣接の分割領域に近いブロックを、そのブロックの更新データに置き換える。なお、境界決定部26は平面におけるマージ境界を決定している。そのため、マージ部17は、処理対象分割領域のz軸の位置によらず、境界決定部26が決定したマージ境界を用いて置き換えを行う。 In step S290, the merging unit 17 replaces, among the blocks of the target divided area of old data, a block closer to an adjacent divided area where updated data exists than the determined merge boundary with the updated data of that block. Note that the boundary determining unit 26 determines the merge boundary in the plane. Therefore, the merging unit 17 performs the replacement using the merging boundary determined by the boundary determining unit 26, regardless of the z-axis position of the divided region to be processed.

なお、マージ領域検出装置2は、xy平面への射影が同一の複数の処理対処領域については、図16のステップS210~ステップS270の処理を一度行えばよい。また、マージ領域検出装置2は、ステップS410の処理をステップS230の処理の後に行ってもよい。また、マージ領域検出装置2は、ステップS290の処理の前に、図11のステップS310の処理を行ってもよい。 Note that the merge area detection device 2 only needs to perform the processes from step S210 to step S270 in FIG. 16 once for a plurality of processing target areas that have the same projection onto the xy plane. Furthermore, the merge area detection device 2 may perform the process of step S410 after the process of step S230. Furthermore, the merge area detection device 2 may perform the process of step S310 in FIG. 11 before the process of step S290.

2次元的に領域を判定することにより、処理の軽量化及び単純化に加え、次のようなメリットがある。すなわち、地図上での3次元データを更新する際に、更地に建物が建った、という状況を、建物とLidarとの間に、車などの遮蔽物がある状況で取得した場合を想定する。この場合、更地の地面が存在していた空間に関する建物の存在情報が得られず、下は更地の地面、上だけ建物、となってしまう可能性がある。しかし、z軸方向に点を射影した場合、建物の上側が存在するという情報だけで下側の地面を削除でき、新しいデータのみで更新された状態にできる。 By determining the area two-dimensionally, in addition to reducing the weight and simplifying the processing, there are the following advantages. In other words, when updating 3D data on a map, assume that a building has been built on a vacant lot, and that the data is acquired in a situation where there is a blocking object such as a car between the building and Lidar. . In this case, it is not possible to obtain information on the existence of buildings in the space where the vacant ground existed, and there is a possibility that the vacant ground is below and the building is only above. However, when points are projected in the z-axis direction, the ground below can be deleted just by the information that the upper side of the building exists, and the state can be updated with only new data.

旧データに対して、更新データで差し替えるだけであれば、階層化された旧データの木構造の一部を更新データの木構造にマージすることで対応可能である。しかし、更新データに差し替える範囲がわからないときには、その差し替えを行う領域を判定する技術が必要である。上述した実施形態により、差し替えを行う領域を判定することができる。 If the old data is simply replaced with the updated data, this can be done by merging a part of the hierarchical tree structure of the old data into the tree structure of the updated data. However, when the range to be replaced with update data is not known, a technique is needed to determine the area to be replaced. According to the embodiment described above, it is possible to determine the area to be replaced.

また、上述した実施形態では、旧データ及び更新データの領域内部は全て連続したデータ、つまり凸の形状の領域のデータであることを前提としている。これは、点群データが連続した空間に対して取得されるため、一般的に離れた領域のデータは取得されないことを想定したものである。例えば、点群データがドーナツ形に取得されたような場合も想定される。その場合には、ステップS120における分割領域への分割によって対応可能である。 Further, in the above-described embodiment, it is assumed that the inside of the area of old data and updated data is all continuous data, that is, data in a convex-shaped area. This is based on the assumption that since point cloud data is acquired for a continuous space, data for distant areas is generally not acquired. For example, a case where the point cloud data is acquired in a donut shape is also assumed. In that case, it can be handled by dividing into divided regions in step S120.

なお、図5のステップS130は、旧データと更新データとの間に境界がない場合の処理である。また、これまでは、旧データと更新データの点群の重複がある場合の説明である。更新データに含まれる領域に、旧データと重複しない領域が含まれるかを判定する構成をさらに追加し、マージ領域検出装置1、2は、旧データと重複しない更新データの領域については細かく見ずに処理してもよい。例えば、境界決定部16、26は、判定されたマージ境界より内側の(更新データ側の)領域の旧データ全てが0であることを確認できれば、それ以下の階層の判定処理を打ち切るようにしてもよい。 Note that step S130 in FIG. 5 is a process when there is no boundary between old data and updated data. Furthermore, so far, the explanation has been given for the case where there is overlap between the point clouds of old data and updated data. A configuration is further added to determine whether the area included in the updated data includes an area that does not overlap with the old data, and the merge area detection devices 1 and 2 do not closely examine areas of the updated data that do not overlap with the old data. may be processed. For example, if the boundary determination units 16 and 26 can confirm that all the old data in the area inside the determined merge boundary (on the updated data side) is 0, they will abort the determination process for the lower layers. Good too.

上記においては、点群データを共通の大きさの分割領域に分割し、各分割領域を8分木データに変換してマージしている。一方で、MPEG(Moving Picture Experts Group)標準化において策定中のPCC(Point Cloud Compression)、特に空間や静止物体向けのG-PCCでは、点群データは8分木表現へ変換された後、算術符号化される。そのため、旧データと更新データとの一方又は両方が、圧縮データであるG-PCCストリームである場合、マージ処理を共通のブロックにより行う場合には8分木処理までは不要である。G-PCCストリームを算術復号し、8分木データを用いてマージすればよい。つまり、点群データそのものではなく、一旦圧縮されたG-PCCストリームを用いたマージ処理においては、8分木への変換を行わず処理可能である。このように、G-PCCストリームの旧データ及び更新データは、完全に座標データまで復号することなくマージが可能である。また、MPEGを用いる際は、各ブロック(符号化単位)に関するヘッダ情報に相当する情報として、G-PCCストリーム内の情報を用いることが可能である。 In the above, point cloud data is divided into divided regions of a common size, and each divided region is converted into 8-ary tree data and merged. On the other hand, in PCC (Point Cloud Compression), which is being developed in the MPEG (Moving Picture Experts Group) standardization, and in particular G-PCC for space and stationary objects, point cloud data is converted to an octree representation and then converted into arithmetic codes. be converted into Therefore, when one or both of old data and updated data is a G-PCC stream that is compressed data, octree processing is not necessary when merging processing is performed using a common block. The G-PCC stream may be arithmetic decoded and merged using octree data. In other words, merging processing using a once compressed G-PCC stream rather than the point cloud data itself can be performed without converting to an octree. In this way, the old data and updated data of the G-PCC stream can be merged without completely decoding the coordinate data. Furthermore, when using MPEG, it is possible to use information in the G-PCC stream as information equivalent to header information regarding each block (coding unit).

ここまでは8分木構造のデータを利用して復号せずにマージする実施形態について説明を行った。ここから、8分木構造のデータを二値化値などに変換したストリームデータを用いても、逆変換を行わずにマージを可能とする手法について説明する。前述したように、ヘッダ情報を用いることで更新データが表現する現実空間の領域と対応する旧データの領域を特定することができる。領域を特定することができれば、特定された領域を更新データのストリームのペイロードを用いて旧データから置き換えることで、逆変換をせずにマージすることができる。 Up to this point, an embodiment has been described in which data in an octree structure is used and merged without decoding. From here, a method will be described that allows merging without performing inverse conversion even if stream data obtained by converting octree-structured data into binary values or the like is used. As described above, by using the header information, it is possible to specify the area of the old data that corresponds to the area of the real space expressed by the updated data. If the area can be specified, by replacing the old data with the specified area using the payload of the update data stream, it is possible to merge without performing reverse conversion.

なお、上記においては、立方体の親ブロックを8つの立方体の子ブロックに分割しているが、親ブロック及び子ブロックは立方体でなくてもよい。例えば、親ブロックがn個の子ブロックに分割される場合、上述のように8分木構造で表現した木構造データに代えて、点が含まれる空間領域をn分木構造で表現したn分木構造データが用いられる。 Note that in the above, a cubic parent block is divided into eight cubic child blocks, but the parent block and child blocks do not have to be cubes. For example, when a parent block is divided into n child blocks, instead of using the tree structure data expressed as an 8-ary tree structure as described above, the spatial region containing the points is expressed as an n-fold tree structure. Tree-structured data is used.

上述した実施形態におけるマージ領域検出装置1、2の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。 The functions of the merge area detection devices 1 and 2 in the embodiments described above may be realized by a computer. In that case, a program for realizing this function may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read into a computer system and executed. Note that the "computer system" herein includes hardware such as an OS and peripheral devices. Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, magneto-optical disks, ROMs, and CD-ROMs, and storage devices such as hard disks built into computer systems. Furthermore, a "computer-readable recording medium" refers to a storage medium that dynamically stores a program for a short period of time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. It may also include a device that retains a program for a certain period of time, such as a volatile memory inside a computer system that is a server or client in that case. Further, the above-mentioned program may be one for realizing a part of the above-mentioned functions, or may be one that can realize the above-mentioned functions in combination with a program already recorded in the computer system.

マージ領域検出装置1、2のハードウェア構成例を説明する。図11は、マージ領域検出装置1、2のハードウェア構成例を示す装置構成図である。マージ領域検出装置1は、プロセッサ71と、記憶部72と、通信インタフェース73と、ユーザインタフェース74とを備える。 An example of the hardware configuration of the merge area detection devices 1 and 2 will be described. FIG. 11 is a device configuration diagram showing an example of the hardware configuration of the merge area detection devices 1 and 2. As shown in FIG. The merge area detection device 1 includes a processor 71, a storage unit 72, a communication interface 73, and a user interface 74.

プロセッサ71は、演算や制御を行う中央演算装置である。プロセッサ71は、例えば、CPUである。プロセッサ71は、記憶部72からプログラムを読み出して実行する。マージ領域検出装置1、2の機能の一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。記憶部72は、さらに、プロセッサ71が各種プログラムを実行する際のワークエリアなどを有する。通信インタフェース73は、他装置と通信可能に接続するものである。ユーザインタフェース74は、キーボード、ポインティングデバイス(マウス、タブレット等)、ボタン、タッチパネル等の入力装置や、ディスプレイなどの表示装置である。ユーザインタフェース74により、人為的な操作が入力される。例えば、ユーザインタフェース74により、上限の階層の情報及び下限の階層の情報が入力される。 The processor 71 is a central processing unit that performs calculations and control. Processor 71 is, for example, a CPU. The processor 71 reads a program from the storage unit 72 and executes it. Some of the functions of the merge region detection devices 1 and 2 may be realized using hardware such as an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), or an FPGA (Field Programmable Gate Array). The storage unit 72 further includes a work area when the processor 71 executes various programs. The communication interface 73 is communicably connected to other devices. The user interface 74 is an input device such as a keyboard, a pointing device (mouse, tablet, etc.), a button, a touch panel, or a display device such as a display. A human operation is input through the user interface 74 . For example, upper limit tier information and lower limit tier information are input through the user interface 74 .

マージ領域検出装置1、2のそれぞれを、ネットワークに接続される複数のコンピュータ装置により実現してもよい。この場合、マージ領域検出装置1、2の各機能部を、これら複数のコンピュータ装置のいずれにより実現するかは任意とすることができる。また、同一の機能部を複数のコンピュータ装置により実現してもよい。 Each of the merge area detection devices 1 and 2 may be realized by a plurality of computer devices connected to a network. In this case, each of the functional units of the merge area detection devices 1 and 2 can be implemented by any one of the plurality of computer devices. Furthermore, the same functional unit may be realized by a plurality of computer devices.

上述した実施形態によれば、マージ領域検出装置は、取得部と、境界決定部とを有する。取得部は、例えば、実施形態の変換部14である。取得部は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、その所定空間を複数の階層からなる木構造の領域に分割した領域ごとの点の有無の情報により表した木構造データを取得する。所定の空間は、実施形態の分割領域に相当し、領域は、ブロックに相当する。境界決定部は、木構造データの階層において点が存在する最も上位の階層に基づいて、所定の空間において第一点群データと、その所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、領域の単位で決定する。 According to the embodiment described above, the merge region detection device includes an acquisition section and a boundary determination section. The acquisition unit is, for example, the conversion unit 14 in the embodiment. The acquisition unit acquires first point cloud data that includes information on the position of each point in a part of a predetermined space, and obtains points for each region in which the predetermined space is divided into tree-structured regions consisting of a plurality of layers. Obtain tree structure data expressed by presence/absence information. The predetermined space corresponds to a divided area in the embodiment, and the area corresponds to a block. The boundary determination unit generates first point cloud data in a predetermined space and information about each point in at least a part of the space in the predetermined space based on the highest layer in which points exist in the hierarchy of the tree structure data. A merging boundary, which is a boundary when merging the second point cloud data including

境界決定部は、所定空間に隣接する空間である隣接空間のうち第一点群データの点が存在しない隣接空間と所定の空間との境界とを初期値のマージ境界とする初期値設定処理と、判定対象の階層の領域に第一点群データの点が存在するか否かを判定し、点が存在しない領域から点が存在する領域へ変わる境界にマージ境界を移動する処理を、判定対象の階層を上位の階層から下位の階層に変更しながら繰り返す繰り返し処理とを行ってもよい。 The boundary determining unit performs an initial value setting process in which the boundary between the predetermined space and the adjacent space, which is a space adjacent to the predetermined space, in which the point of the first point cloud data does not exist, is an initial value merging boundary. , the process of determining whether or not the points of the first point cloud data exist in the region of the hierarchy to be determined, and moving the merge boundary to the boundary that changes from the region where no points exist to the region where points exist. An iterative process may be performed in which the hierarchy is changed from an upper hierarchy to a lower hierarchy.

マージ領域検出装置は、マージ部をさらに備えてもよい。マージ部は、境界決定部により決定されたマージ境界に基づいて、第一点群データの点と第二点群データの点とをマージする。 The merge area detection device may further include a merge section. The merging unit merges the points of the first point group data and the points of the second point group data based on the merging boundary determined by the boundary determining unit.

マージ領域検出装置は、分割部をさらに備えてもよい。分割部は、木構造データの生成単位の分割領域に、前記第一点群データが表す空間と、前記第二点群データが表す空間とを分割する。マージ部は、第一点群データの点が存在し、かつ、第二点群データが存在しない分割領域には、第一点群データの点の情報を用いる。また、マージ部は、隣接する分割領域全てに第一点群データの領域が含まれる分割領域にも、第一点群データの点の情報を用いる。さらに、マージ部は、隣接する分割領域のいずれかに第一点群データの領域が含まれない分割領域には、当該分割領域を所定空間として境界決定部が決定したマージ境界に基づいて第一点群データの点と第二点群データの点とをマージする。マージ部は、例えば、実施形態の置換部15及びマージ部17である。 The merge area detection device may further include a dividing section. The dividing unit divides a space represented by the first point group data and a space represented by the second point group data into divided regions that are units of generation of tree structure data. The merging unit uses information about the points of the first point group data for the divided regions where the points of the first point group data exist and where the second point group data does not exist. Furthermore, the merging unit uses the point information of the first point cloud data for divided regions in which all adjacent divided regions include regions of the first point cloud data. Furthermore, the merging unit, for a divided area in which any of the adjacent divided areas does not include the area of the first point cloud data, performs the first point cloud data based on the merging boundary determined by the boundary determining unit with the divided area as a predetermined space. Merging the points of the point cloud data and the points of the second point cloud data. The merging unit is, for example, the replacing unit 15 and the merging unit 17 in the embodiment.

以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこれら実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described above in detail with reference to the drawings, the specific configuration is not limited to these embodiments, and includes designs within the scope of the gist of the present invention.

1…マージ領域検出装置、2…マージ領域検出装置、11…記憶部、12…入力部、13…分割部、14…変換部、15…置換部、16…境界決定部、17…マージ部、24…変換部、26…境界決定部、71…プロセッサ、72…記憶部、73…通信インタフェース、74…ユーザインタフェース DESCRIPTION OF SYMBOLS 1...Merge area detection device, 2...Merge area detection device, 11...Storage part, 12...Input part, 13...Dividing part, 14...Conversion part, 15...Replacement part, 16...Boundary determination part, 17...Merge part, 24... Conversion unit, 26... Boundary determination unit, 71... Processor, 72... Storage unit, 73... Communication interface, 74... User interface

Claims (6)

所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得ステップと、
前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定ステップと、
を有するマージ領域検出方法。
The first point cloud data containing information on the position of each point in a part of a predetermined space is divided into tree-structured regions consisting of multiple layers, and the presence or absence of points is determined in each region. an acquisition step of acquiring tree structure data represented by information;
The first point cloud data in the predetermined space and information on each point in at least a part of the space in the predetermined space are included based on the highest hierarchy in which points exist in the hierarchy of the tree structure data. a boundary determining step of determining a merge boundary, which is a boundary when merging with the second point cloud data, in units of the area;
A merge region detection method having the following.
前記境界決定ステップは、
前記所定の空間に隣接する空間である隣接空間のうち前記第一点群データの点が存在しない隣接空間と前記所定の空間との境界とを初期値のマージ境界とする初期値設定ステップと、
判定対象の階層の前記領域に前記第一点群データの点が存在するか否かを判定し、点が存在しない前記領域から点が存在する前記領域へ変わる境界に前記マージ境界を移動する処理を、前記判定対象の階層を上位の階層から下位の階層に変更しながら繰り返す繰り返し処理ステップとを含む、
請求項1に記載のマージ領域検出方法。
The boundary determination step includes:
an initial value setting step of setting a boundary between the predetermined space and an adjacent space, which is a space adjacent to the predetermined space, in which the point of the first point group data does not exist, as an initial value merging boundary;
A process of determining whether or not a point of the first point cloud data exists in the area of the layer to be determined, and moving the merge boundary to a boundary where the area changes from the area where the point does not exist to the area where the point exists. an iterative processing step of repeating the above while changing the judgment target hierarchy from an upper hierarchy to a lower hierarchy;
The merge region detection method according to claim 1.
前記境界決定ステップにおいて決定された前記マージ境界に基づいて、前記第一点群データの点と前記第二点群データの点とをマージするマージステップをさらに有する、
請求項1又は請求項2に記載のマージ領域検出方法。
The method further comprises a merging step of merging the points of the first point cloud data and the points of the second point cloud data based on the merging boundary determined in the boundary determining step.
The merge area detection method according to claim 1 or claim 2.
木構造データの生成単位の分割領域に、前記第一点群データが表す空間と、前記第二点群データが表す空間とを分割する分割ステップをさらに有し、
前記マージステップにおいては、
前記第一点群データの点が存在し、かつ、前記第二点群データが存在しない前記分割領域と、隣接する分割領域全てに前記第一点群データの領域が含まれる前記分割領域とには、前記第一点群データの点の情報を用い、
隣接する分割領域のいずれかに前記第一点群データの領域が含まれない前記分割領域には、当該分割領域を前記所定の空間として前記境界決定ステップにより前記マージ境界を決定し、決定した前記マージ境界に基づいて前記第一点群データの点と前記第二点群データの点とをマージする、
請求項3に記載のマージ領域検出方法。
further comprising a dividing step of dividing a space represented by the first point group data and a space represented by the second point group data into divided regions of the generation unit of tree structure data,
In the merge step,
The divided area in which the points of the first point cloud data exist and the second point cloud data does not exist, and the divided area in which all adjacent divided areas include the area of the first point cloud data. uses point information of the first point cloud data,
For the divided area in which the area of the first point cloud data is not included in any of the adjacent divided areas, the merge boundary is determined in the boundary determining step by using the divided area as the predetermined space, and the merge boundary is determined by the boundary determining step. merging the points of the first point cloud data and the points of the second point cloud data based on a merge boundary;
The merge region detection method according to claim 3.
所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得部と、
前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定部と、
を備えるマージ領域検出装置。
The first point cloud data containing information on the position of each point in a part of a predetermined space is divided into tree-structured regions consisting of multiple layers, and the presence or absence of points is determined in each region. an acquisition unit that acquires tree structure data represented by information;
The first point cloud data in the predetermined space and information on each point in at least a part of the space in the predetermined space are included based on the highest hierarchy in which points exist in the hierarchy of the tree structure data. a boundary determining unit that determines a merge boundary, which is a boundary when merging the second point cloud data, in units of the area;
A merge area detection device comprising:
コンピュータに、
請求項1から請求項4のいずれか一項に記載のマージ領域検出方法を実行させるためのプログラム。
to the computer,
A program for executing the merge area detection method according to any one of claims 1 to 4.
JP2022560606A 2020-11-06 2020-11-06 Merge area detection method, merge area detection device and program Active JP7453586B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/041566 WO2022097279A1 (en) 2020-11-06 2020-11-06 Merge region detection method, merge region detection device, and program

Publications (2)

Publication Number Publication Date
JPWO2022097279A1 JPWO2022097279A1 (en) 2022-05-12
JP7453586B2 true JP7453586B2 (en) 2024-03-21

Family

ID=81457095

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022560606A Active JP7453586B2 (en) 2020-11-06 2020-11-06 Merge area detection method, merge area detection device and program

Country Status (2)

Country Link
JP (1) JP7453586B2 (en)
WO (1) WO2022097279A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119205809A (en) * 2024-09-09 2024-12-27 山东港口烟台港集团有限公司 A precise point cloud segmentation method for vehicle transfer robots

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019003428A (en) 2017-06-15 2019-01-10 キヤノン株式会社 Image processing device, image processing method, and program
WO2019198636A1 (en) 2018-04-10 2019-10-17 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data coding method, three-dimensional data decoding method, three-dimensional data coding device, and three-dimensional data decoding device
JP2020085523A (en) 2018-11-19 2020-06-04 株式会社Ihi Monitoring system and processor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63285688A (en) * 1987-05-19 1988-11-22 Ricoh Co Ltd Point information management method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019003428A (en) 2017-06-15 2019-01-10 キヤノン株式会社 Image processing device, image processing method, and program
WO2019198636A1 (en) 2018-04-10 2019-10-17 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data coding method, three-dimensional data decoding method, three-dimensional data coding device, and three-dimensional data decoding device
JP2020085523A (en) 2018-11-19 2020-06-04 株式会社Ihi Monitoring system and processor

Also Published As

Publication number Publication date
WO2022097279A1 (en) 2022-05-12
JPWO2022097279A1 (en) 2022-05-12

Similar Documents

Publication Publication Date Title
CN113256746B (en) Method, device and storage medium for point cloud encoding and decoding
CN115380536B (en) Improved predictive coding for point cloud compression
JP7425899B2 (en) Point cloud encoding and decoding method
US10417821B2 (en) Method of simplifying a geometry model
US7499053B2 (en) Real-time precision ray tracing
Elseberg et al. Efficient processing of large 3d point clouds
CN113826029B (en) Point cloud information encoding method, device, computer equipment and storage medium
CN112438049A (en) Encoding and decoding method, encoder, decoder and software
KR20200109334A (en) Method and device for entropy coding a point cloud
CN113812164A (en) Method and apparatus for processing point clouds
US20140078143A1 (en) Apparatus and method for scheduling of ray tracing
CN113315977B (en) Method and device for decoding point cloud information
CN114556147B (en) Point cloud processing method, computer system and computer readable medium
CN114600464A (en) Encoding and decoding methods, encoders, decoders and software
CN113259678B (en) Method and device for encoding and decoding point cloud information
JP7161154B2 (en) Hierarchical bounding volume generation method, computer program and computer device
KR20160125172A (en) Ray tracing apparatus and method
CN116036604A (en) Data processing method, device, computer and readable storage medium
JP7453586B2 (en) Merge area detection method, merge area detection device and program
JP7307390B2 (en) NOISE JUDGMENT METHOD, NOISE JUDGMENT DEVICE AND PROGRAM
WO2025205261A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
JP7667887B2 (en) Method for encoding and decoding a point cloud
JP7381973B2 (en) Detection method, detection device and program
CN116152404B (en) Animation redirection method, device, computer equipment and storage medium
JP7773960B2 (en) Point group decoding device, point group decoding method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230309

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: 20240206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240219

R150 Certificate of patent or registration of utility model

Ref document number: 7453586

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350