WO2022097279A1 - Merge region detection method, merge region detection device, and program - Google Patents

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

Info

Publication number
WO2022097279A1
WO2022097279A1 PCT/JP2020/041566 JP2020041566W WO2022097279A1 WO 2022097279 A1 WO2022097279 A1 WO 2022097279A1 JP 2020041566 W JP2020041566 W JP 2020041566W WO 2022097279 A1 WO2022097279 A1 WO 2022097279A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
merge
boundary
area
point cloud
Prior art date
Application number
PCT/JP2020/041566
Other languages
French (fr)
Japanese (ja)
Inventor
真由子 渡邊
隆一 谷田
英明 木全
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2022560606A priority Critical patent/JP7453586B2/en
Priority to PCT/JP2020/041566 priority patent/WO2022097279A1/en
Publication of WO2022097279A1 publication Critical patent/WO2022097279A1/en

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; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree

Definitions

  • the present invention relates to a merge area detection method, a merge area detection device, and a program.
  • Point cloud data is often encoded when the data is stored. Therefore, for example, G-PCC (Geometry based Point Cloud Compression) is used for encoding the point cloud data (see, for example, Non-Patent Document 1).
  • G-PCC Geometry based Point Cloud Compression
  • Point cloud data is a set of points acquired for a certain subspace in a continuous space in reality. Therefore, the point cloud data has boundaries in space.
  • the data is not always handled only by the acquired unit. For example, there is a case where a plurality of continuous point cloud data are merged as a space. When performing this merge, it is necessary to decode the encoded point cloud data once. Here, it is assumed that there is no coordinate deviation between the data to be merged.
  • point cloud data As an automatic merging method of point cloud data, a method of adding all the point clouds shown by the two point cloud data can be considered without worrying about the coordinates of the point cloud in the space.
  • point cloud data is not acquired by neatly dividing it into adjacent subspaces. That is, both point clouds may exist in the same region.
  • the area where the point cloud of such two point cloud data exists is described as "the area where the point clouds overlap”.
  • the two point cloud data to be merged may be acquired at different dates and times. Furthermore, the status of the structures in the region where the point clouds overlap may change while the point cloud data is acquired. Examples are when a new building is built, when there is no car parked last time, and so on. When all the point clouds are added together even though the condition of the structure has changed in this way, it is considered difficult to correctly grasp the state of the space.
  • the point cloud data to be merged which is the priority point cloud data (hereinafter referred to as "updated data") and which is not the priority point cloud data (hereinafter referred to as "old data").
  • updated data the priority point cloud data
  • old data the priority point cloud data
  • the point cloud data that correctly represents the state of the space can be created by merging the area where the point clouds overlap, leaving only the updated data without using the old data.
  • the point cloud data is basically measured using the reflected wave from the laser at a certain position. Therefore, the range of the acquired point cloud is different.
  • human cost and time cost will increase because the processing is time-consuming.
  • the first point group data including information on the position of each point in a part of a predetermined space is divided into the predetermined space into a region of a tree structure composed of a plurality of layers.
  • the first point group in the predetermined space based on the acquisition step of acquiring the tree structure data represented by the information on the presence or absence of points in each area and the highest hierarchy in which points exist in the tree structure data hierarchy.
  • the boundary determination step that determines the merge boundary, which is the boundary when merging the data and the second point group data including the information of each point in at least a part of the space in the predetermined space, in the unit of the region. It is a merge area detection method having.
  • the first point group data including information on the position of each point in a part of a predetermined space is divided into the predetermined space into a region of a tree structure composed of a plurality of layers.
  • the first point group in the predetermined space based on the acquisition unit that acquires the tree structure data represented by the information on the presence or absence of points in each area and the highest hierarchy in which points exist in the tree structure data hierarchy.
  • a boundary determination unit that determines the merge boundary, which is the boundary when merging the data and the second point group data including the information of each point in at least a part of the space in the predetermined space, in the unit of the region.
  • a merged area detector is the boundary when merging the data and the second point group data including the information of each point in at least a part of the space in the predetermined space.
  • One aspect of the present invention is a program for causing a computer to execute the above-mentioned merge area detection method.
  • an area for merging the point cloud data of the old data and the point cloud data of the updated data is defined without using manual or detailed analysis method.
  • This area is an area for replacing the old data with the updated data, or an area for matching the old data with the updated data.
  • FIG. 1 is a block diagram showing a configuration of the merge area detection device 1 according to the first embodiment.
  • the merge area detection device 1 includes a storage unit 11, an input unit 12, a division unit 13, a conversion unit 14, a replacement unit 15, a boundary determination unit 16, and a merge unit 17.
  • the storage unit 11 stores the point cloud data of the old data and the point cloud data of the updated data.
  • the point cloud data includes data of a set of coordinate values in which a point exists in a spatial region.
  • 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.
  • the input unit 12 inputs data.
  • the input may be the reception of data from another device or the reading of data from another device or recording medium. Further, the input may include data input by 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 in the storage unit 11.
  • the division unit 13 divides the spatial area of the old data and the spatial area of the updated data into division areas, respectively.
  • the division area is a unit for converting point cloud data into tree structure data.
  • the tree structure data is data in which the divided space including the points in the spatial region obtained by obtaining the set of points indicated by the point cloud data is expressed by an octree structure.
  • a common division area is used for the division of the old data and the division of the update data.
  • the conversion unit 14 converts the point cloud 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 region to the converted tree structure data.
  • the conversion unit 14 converts the point cloud indicated by the update data into tree structure data for each division area, and adds header information indicating the size and position of the division area to the converted tree structure data.
  • the replacement unit 15 replaces the area of the old data corresponding to the real space represented by the update data with the update data with respect to the old data. Alternatively, the replacement unit 15 replaces the divided area in which the updated data does not exist with the divided area of the old data with respect to the updated data.
  • the boundary determination unit 16 determines the merge boundary for the divided area including the space where the point clouds of the old data and the updated data overlap.
  • a merge boundary is a boundary that replaces old data with updated data or a boundary that adds old data 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 region according to the merging boundary determined by the boundary determining unit 16.
  • the coordinate value of each point included in the point cloud data is represented by the value of each component in the xyz coordinate, that is, the x coordinate value, the y coordinate value, and the z coordinate value.
  • FIG. 2 is a diagram showing a parent block and a child block used for spatial region division when generating tree structure data.
  • FIG. 3 is a diagram showing division of a spatial area for generating tree structure data.
  • Block B0 is a cube with 2 n sides on each side.
  • the block B0 corresponds to a division area used when the division unit 13 divides the spatial area of the old data and the spatial area of the updated data.
  • the coordinate values of the point cloud data are converted into the coordinate values of the relative coordinate system. Specifically, the coordinates of the point cloud data are translated so 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).
  • n takes a positive integer. n may be determined based on the size of the point cloud to be encoded.
  • the spatial region division shown in FIG. 2 is performed by using the block B2-i-j (j is an integer of 0 or more and 7 or less) containing one or more points as a parent block. Will be done.
  • blocks B3-i-j-0 to B3-i-j-7 which are eight child blocks, are generated. Further, the process of dividing the space area with the child block containing one or more points as the parent block is repeated a predetermined time.
  • the child block generated by the m-th division (m is an integer of 1 or more) is described as the m-th layer block.
  • FIG. 4 is a diagram showing an example of an ocree.
  • the point cloud data is represented by an octree corresponding to the divided three-dimensional space as shown in FIG.
  • the uppermost node N0 corresponds to the block B0.
  • Node N0 is connected to eight nodes N1-0 to N1-7 in the first layer.
  • Node N1-i corresponds to block B1-i.
  • a node corresponding to a block containing a point is described as a node containing a point, and a node corresponding to a block not including a point is described as a node not including a point.
  • the node N1-i including the point is connected to the eight nodes N2-i-0 to N2-i-7 on the second layer.
  • Node N2-i-j corresponds to block B2-i-j. Since the block B1-i not including the point is not divided, the node N1-i corresponding to the block B1-i is not connected to the node of the second layer.
  • the nodes N1-0 to N1-6 not including the points are not connected to the nodes in the second layer.
  • the node N1-7 including the point is connected to the node N2-7-0 to N2-7-7 in the second layer.
  • Nodes N2-7-0 and N2-7-2 to 7 that do not include points are not connected to the node in the third layer.
  • the node N2-7-2 including the point is connected to the eight nodes N3-7-1-0 to N3-7-1-7 in the third layer.
  • a tree-structured node corresponding to the spatial area divided as described above is generated.
  • a block value indicating whether or not each of the child blocks having the block as the parent block contains the point is given. That is, the node corresponding to the block containing the point is given a block value indicating whether or not each of the nodes one level below the node contains the point.
  • This block value is expressed by the equation (1).
  • x k is a code indicating whether or not a point is included in the kth child block (k is an integer of 0 or more and 7 or less) among the eight child blocks. "1" means that the point is included, and "0" means that the point is not included.
  • FIG. 5 is a flow chart showing the processing of the merge area detection device 1.
  • FIG. 5 shows a process when the update data is merged with the 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 the input data A and data B.
  • Data A and data B are point cloud data.
  • the data A and the data B may be data having an ocree-structured structure for each divided region.
  • the division unit 13 sets the data A as the old data and the data B as the update data according to the instruction input by the input unit 12.
  • the division unit 13 divides the old data and the update data into the division areas, respectively (step S120).
  • the conversion unit 14 converts the data A into tree-structured data having an octa-tree structure for each divided region.
  • the conversion unit 14 converts the data B into tree-structured data having an octa-tree structure for each divided region.
  • the conversion unit 14 adds header information indicating the size and position of the divided area to the tree structure data of each divided area.
  • the position of the divided region is represented by, for example, the coordinate values in the coordinate system before conversion to the relative coordinate system.
  • the replacement unit 15 replaces the divided area of the old data corresponding to the real space represented by the updated data with the divided area of the updated data (step S130).
  • the boundary determination unit 16 sets the divided area in which the old data exists and partially or completely overlaps with the updated data as the processing target divided area.
  • the boundary determination unit 16 determines the merge boundary for each processing target division area.
  • the merge unit 17 merges the update data with the old data according to the merge boundary determined by the boundary determination unit 16 (step S140).
  • FIG. 6 is a flow chart showing the merge boundary determination process of the merge area detection device 1.
  • FIG. 6 shows the details of the process of step S140 of FIG.
  • the boundary determination unit 16 performs the processing of FIG. 6 for each of the processing target division regions.
  • the boundary determination unit 16 determines whether or not the update data exists in all the division areas adjacent to the processing target division area based on the tree structure data of each division area of the update data (step S210).
  • the boundary determination unit 16 determines whether or not the update data exists in all the division areas adjacent to the division area to be processed, instead of the tree structure data, the size of the division area added to the tree structure data of the division area. The judgment may be made based on the header information indicating the position or the like.
  • the boundary determination unit 16 determines that all the processing target division areas are replaced with the update data. Notify the replacement unit 15 of the information of the processing target division area.
  • the replacement unit 15 replaces all the processing target division areas of the update data with the update data of the processing target division area (step S220).
  • the boundary determination unit 16 determines that there is a division area without update data in the division area adjacent to the processing target division area (step S210: NO)
  • the boundary determination unit 16 performs the processing of step S230.
  • the boundary determination unit 16 acquires information on the hierarchy set by the user (step S230).
  • the hierarchy set by the user is the hierarchy to be the target of the process of determining the update target area. This hierarchy corresponds to the hierarchy of the tree structure shown in FIG.
  • the boundary determination unit 16 may read the information of the hierarchy from the storage unit 11, or may acquire the information of the hierarchy 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).
  • the boundary determination unit 16 sets the layer n to be processed as the layer N1 (step S240).
  • the boundary determination unit 16 identifies the boundary between the processing target division area and the adjacent division area where there is no update data, based on the header information given to the tree structure data of each division area of the update data.
  • the boundary determination unit 16 sets the specified boundary as the merge boundary of the initial value (step S250).
  • the boundary determination unit 16 refers to the tree structure data of the processing target division area indicated by the update data, and determines whether or not each block Bn of the layer n includes the update data area. When the block Bn is set to have a point in the tree structure data of the update data, the boundary determination unit 16 determines that the block Bn includes the area of the update data. On the other hand, when the block Bn is set not to have a point in the tree structure data of the update data, the boundary determination unit 16 determines that the block Bn does not include the area of the update data. It should be noted that it is not possible to distinguish between the area where the point cloud is not measured and the area where the point cloud is measured but the point is not detected in the area where there is no update data. The boundary determination unit 16 assigns "1" to the block Bn including the area of the update data, and assigns "0" to the block Bn not including the area of the update data.
  • the boundary determination unit 16 detects the first block Bn to which 1 is assigned to each of the columns of the block Bn in the processing target division area starting from the initial value of the merge boundary. For each column, the boundary determination unit 16 moves the merge boundary of the 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 boundary becomes discontinuous between adjacent columns due to this movement, the boundary determination unit 16 connects the discontinuous merge boundaries along the boundary of the block Bn.
  • the boundary determination unit 16 determines that there is the next layer when the layer n of the current processing target does not reach the lower limit N2 of the layer (step S270: YES).
  • the boundary determination unit 16 updates the layer n of the processing target to the layer (n + 1) immediately below the layer n of the current processing target (step S280).
  • the boundary determination unit 16 repeats the process from step S260.
  • the boundary determination unit 16 repeats the processes of steps S260 to S280. Then, when the boundary determination unit 16 determines that the layer n to be processed has reached the lower limit N2 of the layer (step S270: NO), the boundary determination unit 16 notifies the merge unit 17 of the processing target division area and the merge boundary.
  • the merging unit 17 replaces the blocks in the processing target divided area of the old data that are closer to the adjacent divided area in which the updated data exists than the determined merge boundary with the updated data of the block (step S290). ..
  • the replacement may be performed by a point cloud or by replacing the target location in the tree structure data.
  • FIG. 6 The process of FIG. 6 will be described with reference to FIGS. 7 to 10.
  • the divided area and each block are represented by a plane.
  • FIG. 7 is a diagram showing a processing target divided area and an adjacent divided area.
  • the processing target division area D1 and the division areas D2 to D5 adjacent to the processing target division area D1 correspond to the block B0 in FIG. 3, respectively.
  • FIG. 7A shows a case where update data exists in all the division areas adjacent to the processing target division area D1.
  • the boundary determination unit 16 determines that the entire processing target division area D1 of the old data is replaced with the processing target division area D1 of the update data (step S210: YES, step S220).
  • FIG. 7B shows a case where there is a division area without update data in the division area adjacent to the processing target division area D1.
  • FIG. 7B there is update data in the adjacent divided regions D4 and D5.
  • the boundary determination unit 16 performs the processing after step S230 with respect to the processing target division area D1.
  • FIG. 8 shows the processing when the layer n is 1.
  • the area E represents an area where update data is obtained.
  • the area not included in the update data area E is an area in which the old data is present but the update data is not obtained.
  • the boundary determination unit 16 sets the boundary between the processing target division area D1 and the division areas D2 and D3 as the initial value merge boundary R (step S250 in FIG. 6).
  • the boundary determination unit 16 refers to the tree structure data of the update data, and determines whether or not each of the blocks B1-i of the layer 1 in the processing target division area D1 includes the point of the update data. Note that FIG. 8 shows the four blocks B1-0 to B1-3 of the layer 1.
  • the boundary determination unit 16 assigns 1 to the block B1-i containing the points of the update data and 0 to the blocks B1-i not including the points of the update data.
  • the boundary determination unit 16 detects the first block B1-i to which 1 is assigned to each column of each block B1-i starting with the initial value of the merge boundary R. That is, the boundary determination unit 16 detects the block closest to the current (initial value) merge boundary R among the blocks B1-i having a value of 1 in each column.
  • the boundary determination unit 16 detects the block B1-3 close to the current merge boundary R because the values of both the blocks B1-3 and B1-2 constituting the vertical column L1 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 L1 (step S260 in FIG. 6).
  • the boundary determination unit 16 detects block B1-1 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 determination unit 16 does not move the merge boundary R for the column L2 (step S260 in FIG. 6).
  • the boundary determination unit 16 detects the block B1-3 close to the current merge boundary R because the values of both the 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).
  • the boundary determination unit 16 detects block B1-2 close to the current merge boundary R because the values of blocks B1-2 and B1-0 constituting the horizontal column L4 are both 1. 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).
  • step S270 since the layer n to be processed has not reached the lower limit 2 of the layer (step S270: YES), the layer n to be processed is set to the layer 2 one level higher than the current 1 (FIG. 6). Step S280).
  • FIG. 9 shows the processing when the layer n is 2.
  • the boundary determination unit 16 refers to the tree structure data of the update data, and determines whether or not each of the blocks B2-i-j of the layer 2 in the processing target division area D1 includes the point of the update data.
  • the boundary determination unit 16 may limit the determination target to the child blocks of the blocks B1-1, B1-2, and B1-3 including the boundary in the layer 1 which is one layer above.
  • the boundary determination unit 16 assigns 1 to the block B2-i-j containing the points of the update data and 0 to the blocks B2-i-j not including the points of the update data.
  • the boundary determination unit 16 detects the first block B2-i-j to which 1 is assigned to each of the columns of the blocks B2-i-j starting with the initial value of the merge boundary R. That is, the boundary determination unit 16 detects the block closest to the current merge boundary R among the blocks B2-i-j having a value of 1 in each column.
  • the boundary determination unit 16 is the block B2-2-3 having a value of 1 among the blocks B2-3-3, B2-3-2, B2-2-3, and B2-2-2 constituting the vertical column L11. Is detected.
  • the boundary determination 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).
  • the boundary determination 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 determination 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).
  • 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 vertical column L13 headed by the block B2-1-3. Further, the boundary determination 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 in which the block B2-1-1 is the head. Since the detected blocks B2-1-3 and B2-1-1 include the current merge boundary R, the boundary determination unit 16 does not move the merge boundary R for the columns L13 and L14 (step S260 in FIG. 6). ).
  • 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 column L15 next to the block B2-3-3 at the head.
  • the boundary determination 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 determination unit 16 performs the same processing as described above for the horizontal rows L16 to L18.
  • the boundary determination unit 16 connects the merge boundary R of column L17 and the merge boundary R of column L18.
  • the layer n to be processed since the layer n to be processed has not reached the lower limit 3 of the layer (step S270: YES), the layer n to be processed is set to the layer 3 one level higher than the present (step S280 in FIG. 6). ).
  • FIG. 10 shows the processing when the layer n is 3.
  • the boundary determination unit 16 refers to the tree structure data of the update data and determines whether or not each of the blocks of the layer 3 in the processing target division area D1 includes a point of the update data.
  • the boundary determination unit 16 determines that the target of the determination is the blocks B2-1-4, B2-2-1, B2-2-3, B2-2-4, B2 including the boundary in the layer 2 which is one layer above. It may be limited to child blocks of 3-1, B2-3-2, and B2-3-3.
  • the boundary determination unit 16 assigns 1 to the block of the third layer that includes the point of the update data, and assigns 0 to the block that does not include the point of the update data.
  • the boundary determination unit 16 performs the same processing as in FIG. 9 using the value assigned to the block in the third layer, and moves the merge area 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 layer (step S270: NO in FIG. 6).
  • the merge unit 17 replaces the block on the update data side of the determined merge boundary among the blocks in the processing target division area of the old data with that block of the update data (step S290 in FIG. 6).
  • the boundary determination unit 16 may perform the process shown in FIG. 11 instead of the process shown in FIG.
  • FIG. 11 is a flow chart showing a merge boundary determination process of the merge area detection device 1.
  • the same processing as in FIG. 6 is designated by the same reference numerals, and the description thereof will be omitted.
  • the process shown in FIG. 11 differs from the process shown in FIG. 6 in that the process of step S310 is performed before the process of step S290.
  • the boundary determination unit 16 moves the merge boundary by one block in the direction of the area where the update data is located.
  • FIG. 12 is a diagram showing an example in which the boundary determination unit 16 processes the merge boundary R determined as shown in FIG. 10 in step S310 of FIG. As shown in FIG. 12, the boundary determination unit 16 moves the merge boundary R shown in FIG. 10 in the direction of the update data E by one block.
  • process A and the process shown in FIG. 11 are the difference between making the merge boundary outside or slightly inside the edge of the update data.
  • process A it is possible to merge with all the updated data left.
  • the update data may exist only in a part of the block adjacent to the inside of the boundary, and the point cloud related to this block may be sparse. This is because, after merging in step S290, the part outside the region E in the shaded block in FIG. 10 does not include a point.
  • the old data is used for the merge boundary, and only the area inside the block where the update data is surely present is filled with the update data. This may prevent the boundaries from becoming sparse.
  • the merge area detection device 1 extracts the target area to be updated by the update data from the old data. Then, when the merge area detection device 1 merges the old data and the update data, the merge area detection device 1 detects an area of the old data area that does not include the update data, and leaves the old data in the detected area to update the data. Add together. However, the merge area detection device 1 may extract an area that is not updated from the old data. In that case, in step S120, the replacement unit 15 specifies the divided area in which the updated data does not exist among the divided areas of the old data. The replacement unit 15 adds the specified divided area to the update data, and replaces the added divided area with the old data of the divided area.
  • step S220 the replacement unit 15 leaves the processing target division area as the update data.
  • step S290 the merging unit 17 replaces the block on the old data side of the determined merge boundary among the blocks in the processing target divided area of the update data with the block at the same position of the old data.
  • the area for merging the old data and the updated data is determined three-dimensionally.
  • points are projected in the z-axis (axis perpendicular to the ground) direction, and the area to be merged is determined two-dimensionally.
  • the processing of the merge area detection device can be reduced in weight and simplified.
  • the second embodiment will be described with a focus on the differences from the first embodiment.
  • FIG. 13 is a block diagram showing the configuration of the merge area detection device 2 according to the second embodiment.
  • the same parts as those of the merge area detection device 1 according to the first embodiment shown in FIG. 1 are designated by the same reference numerals, and the description thereof will be omitted.
  • the difference between the merge area detection device 2 and the merge area detection device 1 shown in FIG. 1 is that the merge area detection device 2 includes a conversion unit 24 and a boundary determination unit 26 in place of the conversion unit 14 and the boundary determination unit 16.
  • the conversion unit 24 performs the same processing as the conversion unit 14. Further, the conversion unit 24 projects the divided area and each point of the update data included in the divided area onto a two-dimensional plane. The conversion unit 24 generates tree structure data in which the point cloud data projected on the divided region is represented by the quadtree data for each of the two-dimensional divided regions. The boundary determination unit 26 determines a merge boundary using the update data converted into a two-dimensional plane for the divided region where the old data and the update data overlap.
  • FIGS. 14 and 15 show projections in the z-axis direction.
  • FIG. 14 is a diagram for explaining conversion from octatree data to quadtree 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.
  • the node N-2 is connected to the nodes B-2-0 to B-2-7 corresponding to each of the blocks B-2-0 to B-2-7, which are child blocks of the node N-2. ..
  • the node N-3 is connected to the nodes B-3-0 to B-3-7 corresponding to each of the blocks B-3-0 to B-3-7, which are child blocks of the node N-3.
  • Each node is given a "1" if there is a point, and a "0" if there is no point.
  • the conversion unit 24 calculates the logical sum of the node values corresponding to each of the overlapping blocks 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, respectively, z. It overlaps in the axial direction.
  • the conversion unit 24 uses the block value of the plane that projects the block B-0 and the block B-1 overlapping in the z-axis direction as the logical sum of the value of the node N-1 and the value of the node N-2. ..
  • the conversion unit 24 sets the block value of the plane that projects the blocks B-2 and the blocks B-3 that overlap in the z-axis direction as the logic of the value of the node N-2 and the value of the node N-3. It is a sum.
  • the conversion unit 24 calculates the logical sum of the value of the node N-2-j corresponding to the child block at the same position and the value of the node N-3-j.
  • the conversion unit 24 performs a process of calculating the block value of the plane that projects the blocks overlapping in the z-axis direction with respect to the obtained logical sum.
  • FIG. 15 is a diagram for explaining an example of generating tree structure data using the coordinates of points projected on a two-dimensional plane.
  • 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 coordinates of the xy plane.
  • FIG. 15B is a diagram showing a divided region in which a three-dimensional divided region overlapping in the z-axis direction is projected onto the xy plane.
  • the conversion unit 24 generates four child blocks by dividing the divided region into two equal parts in each of the two directions (x-axis and y-axis) orthogonal to each other.
  • 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 transforming unit 24 uses the coordinates of the projected points to generate a tree-structured node corresponding to each block of the layered plane.
  • the conversion unit 24 assigns a block value indicating whether or not each of the child blocks having the block as a parent block contains a point to the node corresponding to the block containing the point, and creates the quadtree data. ..
  • 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.
  • FIG. 16 is a flow chart showing the merge boundary determination process of the merge area detection device 2.
  • the same processing as in FIG. 6 is designated by the same reference numerals, and the description thereof will be omitted.
  • the process shown in FIG. 16 is different from the process shown in FIG. 6 in that the merge area detection device 2 performs the process of step S410 before the process of step S230.
  • 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 that projects the division area to be processed.
  • the boundary determination unit 26 of the merge area detection device 2 performs the processing of step S250, step S260, and step S280 using the generated quadtree data.
  • step S290 the merging unit 17 replaces the block of the divided area to be processed of the old data, which is closer to the adjacent divided area where the updated data exists than the determined merge boundary, with the updated data of the block.
  • the boundary determination unit 26 determines the merge boundary in the plane. Therefore, the merge unit 17 replaces using the merge boundary determined by the boundary determination unit 26 regardless of the position of the z-axis of the processing target division region.
  • the merge area detection device 2 may perform the processes of steps S210 to S270 of FIG. 16 once for a plurality of processing coping areas having the same projection on the xy plane. Further, the merge area detection device 2 may perform the process of step S410 after the process of step S230. Further, the merge area detection device 2 may perform the process of step S310 in FIG. 11 before the process of step S290.
  • the area to be replaced can be determined.
  • the inside of the area of the old data and the updated data is all continuous data, that is, the data of the convex shape area. This is based on the assumption that since the point cloud data is acquired for a continuous space, the data in a distant region is generally not acquired. For example, it is assumed that the point cloud data is acquired in a donut shape. In that case, it can be dealt with by the division into the division area in step S120.
  • step S130 in FIG. 5 is a process when there is no boundary between the old data and the updated data.
  • the explanation so far has been made when there is duplication of the point cloud between the old data and the updated data.
  • a configuration for determining whether the area included in the update data includes an area that does not overlap with the old data is further added, and the merge area detection devices 1 and 2 do not look at the area of the update data that does not overlap with the old data in detail. May be processed. For example, if the boundary determination units 16 and 26 can confirm that all the old data in the area (on the update data side) inside the determined merge boundary is 0, the boundary determination units 16 and 26 terminate the determination process of the lower hierarchy. May be good.
  • the point cloud data is divided into division areas of a common size, and each division area is converted into octal tree data and merged.
  • PCC Point Cloud Compression
  • MPEG Motion Picture Experts Group
  • point cloud data is converted to octal tree representation and then arithmetic code. Be made. Therefore, when one or both of the old data and the updated data is a G-PCC stream which is compressed data, the ocree processing is not necessary when the merging processing is performed by a common block.
  • the G-PCC stream may be arithmetically decoded and merged using the ocree data.
  • the process can be performed without conversion to an octal tree. In this way, the old data and the updated data of the G-PCC stream can be merged without completely decoding the coordinate data. Further, when MPEG is used, it is possible to use the information in the G-PCC stream as the information corresponding to the header information for each block (coding unit).
  • the parent block of the cube is divided into eight child blocks of the cube, but the parent block and the child block do not have to be cubes.
  • the spatial area containing the points is represented by the n-branch structure instead of the tree-structured data represented by the octa-tree structure as described above. Tree structure data is used.
  • the functions of the merge area detection devices 1 and 2 in the above-described embodiment may be realized by a computer.
  • 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 by a computer system and executed.
  • the term "computer system” as used herein includes hardware such as an OS and peripheral devices.
  • the "computer-readable recording medium” refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, and a storage device such as a hard disk built in a computer system.
  • a "computer-readable recording medium” is a communication line for transmitting a program via a network such as the Internet or a communication line such as a telephone line, and dynamically holds the program for a short period of time. It may also include a program that holds a program for a certain period of time, such as a volatile memory inside a computer system that is a server or a client in that case. Further, the above-mentioned program may be for realizing a part of the above-mentioned functions, and may be further realized by combining the above-mentioned functions with a program already recorded in the computer system.
  • FIG. 11 is a device configuration diagram showing a hardware configuration example of the merge area detection devices 1 and 2.
  • the merge area detection device 1 includes a processor 71, a storage unit 72, a communication interface 73, and a user interface 74.
  • the processor 71 is a central processing unit that performs calculations and controls.
  • the 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 area detection devices 1 and 2 may be realized by using hardware such as ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), and FPGA (Field Programmable Gate Array).
  • the storage unit 72 further has a work area for the processor 71 to execute various programs and the like.
  • the communication interface 73 is connected so as to be able to communicate with another device.
  • the user interface 74 is an input device such as a keyboard, a pointing device (mouse, tablet, etc.), a button, a touch panel, and a display device such as a display.
  • An artificial operation is input by the user interface 74.
  • the user interface 74 inputs information on the upper limit layer and information on the lower limit layer.
  • Each of the merge area detection devices 1 and 2 may be realized by a plurality of computer devices connected to the network. In this case, it may be arbitrary which of these plurality of computer devices realizes each of the functional units of the merge area detection devices 1 and 2. Further, the same functional unit may be realized by a plurality of computer devices.
  • the merge area detection device has an acquisition unit and a boundary determination unit.
  • the acquisition unit is, for example, the conversion unit 14 of the embodiment.
  • the acquisition unit divides the first point cloud data including the position information of each point in a part of the space in the predetermined space into the area of the tree structure consisting of a plurality of layers, and the point in each area. Acquire the tree structure data represented by the presence / absence information.
  • the predetermined space corresponds to the divided area of the embodiment, and the area corresponds to the block.
  • the demarcation unit determines the first point cloud data in a predetermined space and the information of each point in at least a part of the space in the predetermined space, based on the highest hierarchy in which the points exist in the hierarchy of the tree structure data.
  • the merge boundary which is the boundary when merging with the second point cloud data including, is determined in the unit of the area.
  • the boundary determination unit performs initial value setting processing in which the boundary between the adjacent space where the point of the first point cloud data does not exist and the predetermined space among the adjacent spaces which are adjacent to the predetermined space is used as the merge boundary of the initial values.
  • Judgment target is the process of determining whether or not a point in the first point cloud data exists in the area of the hierarchy to be determined, and moving the merge boundary to the boundary where the area where the point does not exist changes to the area where the point exists. It may be repeated while changing the hierarchy of the above from the upper hierarchy to the lower hierarchy.
  • the merge area detection device may further include a merge unit.
  • the merge unit merges the points of the first point cloud data and the points of the second point cloud data based on the merge boundary determined by the boundary determination unit.
  • the merge area detection device may further include a division portion.
  • the division unit divides the space represented by the first point cloud data and the space represented by the second point cloud data into the division area of the tree structure data generation unit.
  • the merge unit uses the point information of the first point cloud data in the divided region where the points of the first point cloud data exist and the second point cloud data does not exist. Further, the merging unit also uses the point information of the first point cloud data in the divided area in which the area of the first point cloud data is included in all the adjacent divided areas. Further, in 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 unit is first based on the merge boundary determined by the boundary determination unit with the divided area as a predetermined space. Merge the points in the point cloud data with the points in the second point cloud data.
  • the merging unit is, for example, the replacement unit 15 and the merging unit 17 of the embodiment.

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)
  • Image Analysis (AREA)

Abstract

This merge region detection method has an acquisition step and a boundary determination step. The acquisition step involves acquiring tree structure data in which first point cloud data, which includes information about the positions in a prescribed space of each point in part of the space, is represented by information about the presence of points in each region obtained by dividing the prescribed space into regions of a tree structure formed from a plurality of layers. The boundary determination step involves determining, in units of regions and on the basis of the uppermost layer in which a point is present in the layers of the tree structure data, a merge boundary that is a boundary used when merging the first point cloud data in the prescribed space and second point cloud data that includes information about each point in the space for at least part of the prescribed space.

Description

マージ領域検出方法、マージ領域検出装置及びプログラムMerge area detection method, merge area detection device and program
 本発明は、マージ領域検出方法、マージ領域検出装置及びプログラムに関する。 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 the chances of acquiring point cloud data in space with devices such as fixed LiDAR (Light Detection and Ringing), in-vehicle LiDAR, drone-mounted LiDAR, and MMS (Mobile Mapping System) will increase in the future. With such an 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 for encoding the 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 space in reality. Therefore, the point cloud data has boundaries in space. When using point cloud data, the data is not always handled only by the acquired unit. For example, there is a case where a plurality of continuous point cloud data are merged as a space. When performing this merge, it is necessary to decode the encoded point cloud data once. Here, it is assumed that there is no coordinate deviation between the data to be merged.
 点群データの自動的なマージ方法として、特に空間内での点群の座標を気にせずに、二つの点群データが示す全ての点群を足し合わせる方法が考えられる。しかし、一般に、隣接する部分空間にきれいに分けて点群データが取得されることはない。つまり、同じ領域内に、双方の点群が存在する可能性がある。以下では、このような二つの点群データの点群が存在する領域を「点群が重なる領域」と記載する。 As an automatic merging method of point cloud data, a method of adding all the point clouds shown by the two point cloud data can be considered without worrying about the coordinates of the point cloud in the space. However, in general, point cloud data is not acquired by neatly dividing it into adjacent subspaces. That is, both point clouds may exist in the same region. In the following, the area where the point cloud of such two point cloud data exists is described as "the area where the point clouds overlap".
 マージ対象の二つの点群データが別の日時に取得される場合がある。さらには、それら点群データが取得された間に、点群が重なる領域内の構造物の状況が変わっている場合がある。建物が新たに作られた場合、前回停められていた車がいない場合、などがその例である。このように構造物の状況が変わっているにもかかわらず全ての点群を足し合わせた場合、正しく空間の様子を把握することは難しいと考えられる。 The two point cloud data to be merged may be acquired at different dates and times. Furthermore, the status of the structures in the region where the point clouds overlap may change while the point cloud data is acquired. Examples are when a new building is built, when there is no car parked last time, and so on. When all the point clouds are added together even though the condition of the structure has changed in this way, it is considered difficult to correctly grasp the state of the space.
 マージ対象の二つの点群データのうち、いずれが優先される点群データ(以下、「更新データ」と記載)であり、いずれが優先されない点群データ(以下、「旧データ」と記載)であるかが決まっている場合もある。その場合は、点群が重なる領域については、旧データを用いずに全て更新データのみを残してマージすることにより、正しく空間の様子を表す点群データを作成することができると考えられる。 Of the two point cloud data to be merged, which is the priority point cloud data (hereinafter referred to as "updated data") and which is not the priority point cloud data (hereinafter referred to as "old data"). In some cases, it has been decided. In that case, it is considered that the point cloud data that correctly represents the state of the space can be created by merging the area where the point clouds overlap, leaving only the updated data without using the old data.
 一方で、点群データは、基本的にはある位置のレーザーからの反射波を用いて計測される。よって、取得される点群の範囲はばらばらである。それらの領域をきれいに分けようとすると、一般的には手動あるいは点群の詳細な解析手法等を用いる必要がある。これらは、点群の表す構造物などを確認しながら行われるため、正確にマージを行える可能性がある。しかし、処理に手間がかかるため、人的コストや時間的コストが増大することが想定される。 On the other hand, the point cloud data is basically measured using the reflected wave from the laser at a certain position. Therefore, the range of the acquired point cloud is different. In order to divide these areas neatly, it is generally necessary to use manual or detailed point cloud analysis methods. Since these are performed while checking the structure represented by the point cloud, there is a possibility that the merge can be performed accurately. However, it is expected that human cost and time cost will increase because the processing is time-consuming.
 上記事情に鑑み、本発明は、対象の空間に重なりがある点群データ同士をマージする際の領域を定めることができるマージ領域検出方法、マージ領域検出装置及びプログラムを提供することを目的としている。 In view of the above circumstances, it is an object of the present invention 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 having overlaps in a target space. ..
 本発明の一態様は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得ステップと、前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定ステップと、を有するマージ領域検出方法である。 In one aspect of the present invention, the first point group data including information on the position of each point in a part of a predetermined space is divided into the predetermined space into a region of a tree structure composed of a plurality of layers. The first point group in the predetermined space based on the acquisition step of acquiring the tree structure data represented by the information on the presence or absence of points in each area and the highest hierarchy in which points exist in the tree structure data hierarchy. With the boundary determination step that determines the merge boundary, which is the boundary when merging the data and the second point group data including the information of each point in at least a part of the space in the predetermined space, in the unit of the region. It is a merge area detection method having.
 本発明の一態様は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、前記所定の空間を複数の階層からなる木構造の領域に分割した前記領域ごとの点の有無の情報により表した木構造データを取得する取得部と、前記木構造データの階層において点が存在する最も上位の階層に基づいて、前記所定の空間において前記第一点群データと、前記所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、前記領域の単位で決定する境界決定部と、を備えるマージ領域検出装置である。 In one aspect of the present invention, the first point group data including information on the position of each point in a part of a predetermined space is divided into the predetermined space into a region of a tree structure composed of a plurality of layers. The first point group in the predetermined space based on the acquisition unit that acquires the tree structure data represented by the information on the presence or absence of points in each area and the highest hierarchy in which points exist in the tree structure data hierarchy. With a boundary determination unit that determines the merge boundary, which is the boundary when merging the data and the second point group data including the information of each point in at least a part of the space in the predetermined space, in the unit of the region. , A merged area detector.
 本発明の一態様は、コンピュータに、上述のマージ領域検出方法を実行させるためのプログラムである。 One aspect of the present invention is a program for causing a computer to execute the above-mentioned merge area detection method.
 本発明により、対象の空間に重なりがある点群データ同士をマージする際の領域を定めることが可能となる。 According to the present invention, it is possible to determine an area for merging point cloud data having overlaps in the target space.
第1の実施形態によるマージ領域検出装置の構成を示すブロック図である。It is a block diagram which shows the structure of the merge area detection apparatus by 1st Embodiment. 同実施形態に用いられる空間領域分割の親ブロックと子ブロックを示す図である。It is a figure which shows the parent block and the child block of the space area division used in the same embodiment. 同実施形態に用いられる点群データを含む空間領域の分割を示す図である。It is a figure which shows the division of the spatial area containing the point cloud data used in the same embodiment. 同実施形態に用いられる8分木の例を示す図である。It is a figure which shows the example of the octath tree used in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。It is a flow chart which shows the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。It is a flow chart which shows the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。It is a figure for demonstrating the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。It is a figure for demonstrating the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。It is a figure for demonstrating the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。It is a figure for demonstrating the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。It is a flow chart which shows the operation of the merge area detection apparatus in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を説明するための図である。It is a figure for demonstrating the operation of the merge area detection apparatus in the same embodiment. 第2の実施形態によるマージ領域検出装置の構成を示すブロック図である。It is a block diagram which shows the structure of the merge area detection apparatus by 2nd Embodiment. 同実施形態における8分木データから4分木データへの変換を説明するための図である。It is a figure for demonstrating the conversion from the octath tree data to the quadtree data in the same embodiment. 同実施形態における2次元平面に射影した点の座標を用いた木構造データの生成を説明するための図である。It is a figure for demonstrating the generation of the tree structure data using the coordinates of the point projected on the two-dimensional plane in the same embodiment. 同実施形態におけるマージ領域検出装置の動作を示すフロー図である。It is a flow chart which shows the operation of the merge area detection apparatus in the same embodiment. 第1及び第2の実施形態におけるマージ領域検出装置のハードウェア構成を示す図である。It is a figure which shows the hardware configuration of the merge area detection apparatus in 1st and 2nd Embodiment.
 以下、図面を参照しながら本発明の実施形態を詳細に説明する。本実施形態では、手動あるいは詳細な解析手法を用いることなく、旧データの点群データと更新データの点群データとをマージする領域を定める。この領域は、旧データに対して更新データへの置き換えを行う領域、又は、更新データに対して旧データを合わせる領域である。本実施形態では、点群データを8分木などの木構造で表した木構造データを用いて、マージする領域を高速に判定可能である。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In this embodiment, an area for merging the point cloud data of the old data and the point cloud data of the updated data is defined without using manual or detailed analysis method. This area is an area for replacing the old data with the updated data, or an area for matching the old data with the updated data. In the present embodiment, it is possible to determine the area to be merged at high speed by using the tree structure data in which the point cloud data is represented by a tree structure such as an ocree.
(第1の実施形態)
 図1は、第1の実施形態によるマージ領域検出装置1の構成を示すブロック図である。マージ領域検出装置1は、記憶部11と、入力部12と、分割部13と、変換部14と、置換部15と、境界決定部16と、マージ部17を備える。
(First Embodiment)
FIG. 1 is a block diagram showing a configuration of the merge area detection device 1 according to the first embodiment. The merge area detection device 1 includes a storage unit 11, an input unit 12, a division unit 13, a conversion unit 14, a replacement unit 15, a boundary determination unit 16, and a merge unit 17.
 記憶部11は、旧データの点群データと、更新データの点群データとを記憶する。点群データは、空間領域において点が存在する座標値の集合のデータを含む。旧データに含まれる点の座標値と、更新データに含まれる点の座標値とは、同一の座標空間における値である。旧データの空間領域と、更新データの空間領域とは、一部が重なっている。 The storage unit 11 stores the point cloud data of the old data and the point cloud data of the updated data. The point cloud data includes data of a set of coordinate values in which a point exists in a spatial region. 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. The input may be the reception of data from another device or the reading of data from another device or recording medium. Further, the input may include data input by 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 in the storage unit 11.
 分割部13は、旧データの空間領域及び更新データの空間領域をそれぞれ、分割領域に分割する。分割領域は、点群データを木構造データに変換する単位である。木構造データは、点群データが示す点の集合が得られた空間領域のうち、点が含まれる分割空間を8分木構造で表現したデータである。旧データの分割と更新データの分割とには、共通の分割領域が用いられる。 The division unit 13 divides the spatial area of the old data and the spatial area of the updated data into division areas, respectively. The division area is a unit for converting point cloud data into tree structure data. The tree structure data is data in which the divided space including the points in the spatial region obtained by obtaining the set of points indicated by the point cloud data is expressed by an octree structure. A common division area is used for the division of the old data and the division of the update data.
 変換部14は、旧データが示す点群を分割領域ごとに木構造データに変換する。変換部14は、変換した木構造データに、分割領域のサイズ及び位置を示すヘッダ情報を付加する。同様に、変換部14は、更新データが示す点群を分割領域ごとに木構造データに変換し、変換した木構造データに、分割領域のサイズ及び位置を示すヘッダ情報を付加する。これにより、旧データの空間領域及び更新データの空間領域によらず、旧データ及び更新データを、共通の分割領域毎の木構造データにより表すことができる。 The conversion unit 14 converts the point cloud 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 region to the converted tree structure data. Similarly, the conversion unit 14 converts the point cloud indicated by the update data into tree structure data for each division area, and adds header information indicating the size and position of the division area to the converted tree structure data. Thereby, the old data and the updated data can be represented by the 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 the area of the old data corresponding to the real space represented by the update data with the update data with respect to the old data. Alternatively, the replacement unit 15 replaces the divided area in which the updated data does not exist with the divided area of the old data with respect to the updated data.
 境界決定部16は、旧データ及び更新データの点群が重なる空間を含む分割領域について、マージ境界を決定する。マージ境界は、旧データを更新データにより置き換える境界又は更新データに旧データを付加する境界である。マージ部17は、境界決定部16が決定したマージ境界に従って、分割領域における旧データの点群データと更新データの点群データとをマージする。 The boundary determination unit 16 determines the merge boundary for the divided area including the space where the point clouds of the old data and the updated data overlap. A merge boundary is a boundary that replaces old data with updated data or a boundary that adds old data 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 region according to the merging boundary determined by the boundary determining unit 16.
 図2~図4を用いて、点群データの木構造データを説明する。本実施形態において、点群データに含まれる各点の座標値は、xyz座標における各成分の値、すなわち、x座標値、y座標値、及び、z座標値により表される。 The tree structure data of the point cloud data will be described with reference to FIGS. 2 to 4. In the present embodiment, the coordinate value of each point included in the point cloud data is represented by the value of each component in the xyz coordinate, 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 a parent block and a child block used for spatial region division when generating tree structure data. By dividing the parent block B, which is the space of the cube, into two equal parts in each of the three directions (x-axis, y-axis, z-axis) orthogonal to each other, the child blocks B-0 to eight cubes from the parent block B 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 division of a spatial area for generating tree structure data. Block B0 is a cube with 2 n sides on each side. The block B0 corresponds to a division area used when the division unit 13 divides the spatial area of the old data and the spatial area of the updated data. To simplify the calculation process, the coordinate values of the point cloud data are converted into the coordinate values of the relative coordinate system. Specifically, the coordinates of the point cloud data are translated so 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 x = 2 n , y = 2 n , and z = 2 n of block B0 does not include a point. n takes a positive integer. n may be determined based on the size of the point cloud 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 area division shown in FIG. 2 is performed with the block B0 as the parent block, eight child blocks B1-0 to B1-7 are generated. Next, when the spatial area division shown in FIG. 2 is performed using the block B1-i (i is an integer of 0 or more and 7 or less) including one or more points among the blocks B1-0 to B1-7 as the parent block. Blocks B2-i-0 to B2-i-7, which are eight child blocks, are generated. Blocks B1-i that do not contain points are not divided.
 ブロック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階層目のブロックと記載する。 Of the blocks B2-i-0 to B2-i-7, the spatial region division shown in FIG. 2 is performed by using the block B2-i-j (j is an integer of 0 or more and 7 or less) containing one or more points as a parent block. Will be done. As a result, blocks B3-i-j-0 to B3-i-j-7, which are eight child blocks, are generated. Further, the process of dividing the space area with the child block containing one or more points as the parent block is repeated a predetermined time. The child block generated by the m-th division (m is an integer of 1 or more) is described as the 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 ocree. The point cloud data is represented by an octree corresponding to the divided three-dimensional space as shown in FIG. The uppermost node N0 corresponds to the block B0. Node N0 is connected to eight nodes N1-0 to N1-7 in the first layer. Node N1-i corresponds to block B1-i. A node corresponding to a block containing a point is described as a node containing a point, and a node corresponding to a block not including a point is described as a node not including a point.
 点を含むノード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と接続される。 The node N1-i including the point is connected to the eight nodes N2-i-0 to N2-i-7 on the second layer. Node N2-i-j corresponds to block B2-i-j. Since the block B1-i not including the point is not divided, the node N1-i corresponding to the block B1-i is not connected to the node of the second layer. In FIG. 4, the nodes N1-0 to N1-6 not including the points are not connected to the nodes in the second layer. Further, the node N1-7 including the point is connected to the node N2-7-0 to N2-7-7 in the second layer. Nodes N2-7-0 and N2-7-2 to 7 that do not include points are not connected to the node in the third layer. The node N2-7-2 including the point is connected to the eight nodes N3-7-1-0 to N3-7-1-7 in the third layer.
 点群データからは、上記のように分割された空間領域に対応した木構造のノードが生成される。点を含むブロックに対応したノードについては、そのブロックを親ブロックとする子ブロックのそれぞれが点を含むか否かを表したブロック値が付与される。つまり、点を含むブロックに対応したノードには、そのノードの1階層下のノードそれぞれが点を含むか否かを表したブロック値が付与される。このブロック値は、式(1)のように表される。xは、8つの子ブロックのうちk番目(kは0以上7以下の整数)の子ブロックに点が含まれているか否かを表す符号である。「1」は点を含むことを表し、「0」は点を含まないことを表す。 From the point cloud data, a tree-structured node corresponding to the spatial area divided as described above is generated. For the node corresponding to the block containing the point, a block value indicating whether or not each of the child blocks having the block as the parent block contains the point is given. That is, the node corresponding to the block containing the point is given a block value indicating whether or not each of the nodes one level below the node contains the point. This block value is expressed by the equation (1). x k is a code indicating whether or not a point is included in the kth child block (k is an integer of 0 or more and 7 or less) among the eight child blocks. "1" means that the point is included, and "0" means that the point is not included.
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000001
 例えば、ブロック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 of the child blocks of block B0 contain 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 in which the position of the point is represented by a value from 0 to 255 by the 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 chart showing the processing of the merge area detection device 1. FIG. 5 shows a process when the update data is merged with the 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 the input data A and data B. Data A and data B are point cloud data. The data A and the data B may be data having an ocree-structured structure for each divided region. The division unit 13 sets the data A as the old data and the data B as the update data according to the instruction input by the input unit 12.
 分割部13は、データA及びデータBが分割領域ごとに8分木構造化されたデータではない場合、旧データ及び更新データをそれぞれ、分割領域に分割する(ステップS120)。変換部14は、データAを、分割領域ごとに8分木構造化された木構造データに変換する。同様に、変換部14は、データBを、分割領域ごとに8分木構造化された木構造データに変換する。変換部14は、各分割領域の木構造データに、その分割領域の大きさや位置などを示すヘッダ情報を付加する。分割領域の位置は、例えば、相対座標系に変換する前の座標系における座標値により表される。 When the data A and the data B are not the data having an ocree-structured structure for each division area, the division unit 13 divides the old data and the update data into the division areas, respectively (step S120). The conversion unit 14 converts the data A into tree-structured data having an octa-tree structure for each divided region. Similarly, the conversion unit 14 converts the data B into tree-structured data having an octa-tree structure for each divided region. The conversion unit 14 adds header information indicating the size and position of the divided area to the tree structure data of each divided area. The position of the divided region is represented by, for example, the 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 represented by the updated data with the divided area of the updated data (step S130). The boundary determination unit 16 sets the divided area in which the old data exists and partially or completely overlaps with the updated data as the processing target divided area. The boundary determination unit 16 determines the merge boundary for each processing target division area. The merge unit 17 merges the update data with the old data according to the merge boundary determined by the boundary determination unit 16 (step S140).
 図6は、マージ領域検出装置1のマージ境界決定処理を示すフロー図である。図6は、図5のステップS140の処理の詳細を示す。境界決定部16は、処理対象分割領域それぞれについて、図6の処理を行う。 FIG. 6 is a flow chart showing the merge boundary determination process of the merge area detection device 1. FIG. 6 shows the details of the process of step S140 of FIG. The boundary determination unit 16 performs the processing of FIG. 6 for each of the processing target division regions.
 まず、境界決定部16は、更新データの各分割領域の木構造データに基づいて、処理対象分割領域に隣接する分割領域全てに更新データが存在するか否かを判断する(ステップS210)。境界決定部16は、処理対象分割領域に隣接する分割領域全てに更新データが存在するか否かを、木構造データに代えて、分割領域の木構造データに付加された、分割領域の大きさや位置などを示すヘッダ情報に基づいて判断してもよい。境界決定部16は、処理対象分割領域に隣接する全ての分割領域に更新データが存在すると判断した場合(ステップS210:YES)、処理対象分割領域を全て更新データに置き換えると判断する。置換部15に処理対象分割領域の情報を通知する。置換部15は、更新データの処理対象分割領域を全て、その処理対象分割領域の更新データに置き換える(ステップS220)。 First, the boundary determination unit 16 determines whether or not the update data exists in all the division areas adjacent to the processing target division area based on the tree structure data of each division area of the update data (step S210). The boundary determination unit 16 determines whether or not the update data exists in all the division areas adjacent to the division area to be processed, instead of the tree structure data, the size of the division area added to the tree structure data of the division area. The judgment may be made based on the header information indicating the position or the like. When the boundary determination unit 16 determines that the update data exists in all the division areas adjacent to the processing target division area (step S210: YES), the boundary determination unit 16 determines that all the processing target division areas are replaced with the update data. Notify the replacement unit 15 of the information of the processing target division area. The replacement unit 15 replaces all the processing target division areas of the update data with the update data of the processing target division area (step S220).
 境界決定部16は、処理対象分割領域に隣接する分割領域に、更新データがない分割領域があると判断した場合(ステップS210:NO)、ステップS230の処理を行う。境界決定部16は、ユーザが設定した階層の情報を取得する(ステップS230)。ユーザが設定する階層は、更新対象領域を決定する処理の対象となる階層である。この階層は、図4に示す木構造の階層に相当する。境界決定部16は、階層の情報を記憶部11から読み出してもよく、入力部12により入力された階層の情報を取得してもよい。ユーザが設定した階層が、階層N1(N1は1以上の整数)から階層N2(N2はN1以上の整数)までであるとする。 When the boundary determination unit 16 determines that there is a division area without update data in the division area adjacent to the processing target division area (step S210: NO), the boundary determination unit 16 performs the processing of step S230. The boundary determination unit 16 acquires information on the hierarchy set by the user (step S230). The hierarchy set by the user is the hierarchy to be the target of the process of determining the update target area. This hierarchy corresponds to the hierarchy of the tree structure shown in FIG. The boundary determination unit 16 may read the information of the hierarchy from the storage unit 11, or may acquire the information of the hierarchy 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 determination unit 16 sets the layer n to be processed as the layer N1 (step S240). The boundary determination unit 16 identifies the boundary between the processing target division area and the adjacent division area where there is no update data, based on the header information given to the tree structure data of each division area of the update data. The boundary determination unit 16 sets the specified boundary as the merge boundary of the initial value (step S250).
 境界決定部16は、更新データが示す処理対象分割領域の木構造データを参照して、階層nの各ブロックBnが更新データの領域を含むか否か判定する。境界決定部16は、更新データの木構造データに、ブロックBnが点を有することが設定されている場合に、そのブロックBnが更新データの領域を含むと判定する。一方、境界決定部16は、更新データの木構造データに、ブロックBnが点を有していないことが設定されている場合に、そのブロックBnが更新データの領域を含んでいないと判定する。なお、更新データがない領域は、点群が測定されなかった領域であるか、測定されたが点が検出されなかった領域であるかの区別はつかない。境界決定部16は、更新データの領域を含むブロックBnに「1」を付与し、更新データの領域を含まないブロックBnに「0」を付与する。 The boundary determination unit 16 refers to the tree structure data of the processing target division area indicated by the update data, and determines whether or not each block Bn of the layer n includes the update data area. When the block Bn is set to have a point in the tree structure data of the update data, the boundary determination unit 16 determines that the block Bn includes the area of the update data. On the other hand, when the block Bn is set not to have a point in the tree structure data of the update data, the boundary determination unit 16 determines that the block Bn does not include the area of the update data. It should be noted that it is not possible to distinguish between the area where the point cloud is not measured and the area where the point cloud is measured but the point is not detected in the area where there is no update data. The boundary determination unit 16 assigns "1" to the block Bn including the area of the update data, and assigns "0" to the block Bn not including the area of the update 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 to each of the columns of the block Bn in the processing target division area starting from the initial value of the merge boundary. For each column, the boundary determination unit 16 moves the merge boundary of the 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 boundary becomes discontinuous between adjacent columns due to this movement, the boundary determination unit 16 connects the discontinuous merge boundaries along the boundary of the block Bn.
 境界決定部16は、現在の処理対象の階層nが、階層の下限N2に達していない場合、次の階層があると判断する(ステップS270:YES)。境界決定部16は、処理対象の階層nを、現在の処理対象の階層nの一つ下の階層(n+1)に更新する(ステップS280)。境界決定部16は、ステップS260からの処理を繰り返す。 The boundary determination unit 16 determines that there is the next layer when the layer n of the current processing target does not reach the lower limit N2 of the layer (step S270: YES). The boundary determination unit 16 updates the layer n of the processing target to the layer (n + 1) immediately below the layer n of the current processing target (step S280). The boundary determination unit 16 repeats the process from step S260.
 上記のように境界決定部16は、ステップS260~ステップS280の処理を繰り返す。そして、境界決定部16は、処理対象の階層nが、階層の下限N2に達したと判定した場合(ステップS270:NO)、処理対象分割領域と、マージ境界とをマージ部17に通知する。マージ部17は、旧データの処理対象分割領域内のブロックのうち、決定したマージ境界よりも、更新データが存在する隣接の分割領域に近いブロックを、そのブロックの更新データに置き換える(ステップS290)。置き換えは、点群により行ってもよく、木構造データにおける対象箇所を置き換えることにより行ってもよい。 As described above, the boundary determination unit 16 repeats the processes of steps S260 to S280. Then, when the boundary determination unit 16 determines that the layer n to be processed has reached the lower limit N2 of the layer (step S270: NO), the boundary determination unit 16 notifies the merge unit 17 of the processing target division area and the merge boundary. The merging unit 17 replaces the blocks in the processing target divided area of the old data that are closer to the adjacent divided area in which the updated data exists than the determined merge boundary with the updated data of the block (step S290). .. The replacement may be performed by a point cloud or by replacing the target location in the tree structure data.
 図7~図10を用いて、図6の処理を説明する。図7~図10では、簡単のため、分割領域及び各ブロックを平面で表している。 The process of FIG. 6 will be described with reference to FIGS. 7 to 10. In FIGS. 7 to 10, for the sake of simplicity, the divided area and each block are represented by a plane.
 図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 division area D1 and the division areas D2 to D5 adjacent to the processing target division area D1 correspond to the block B0 in FIG. 3, respectively. FIG. 7A shows a case where update data exists in all the division areas adjacent to the processing target division area D1. In this case, the boundary determination unit 16 determines that the entire processing target division area D1 of the old data is replaced with the processing target division area D1 of the update 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 division area without update data in the division area adjacent to the processing target division area D1. In FIG. 7B, there is update data in the adjacent divided regions D4 and D5. However, there is no update data in the adjacent divided regions D2 and D3. In this case, the boundary determination unit 16 performs the processing after step S230 with respect to the processing target division area D1.
 図8~図10は、処理対象分割領域D1におけるマージ境界の決定を説明するための図である。図6のステップS230において取得した階層N1が1、階層N2が3である場合を説明する。境界決定部16は、処理対象の階層nをN1(=1)とする(図6のステップS240)。 8 to 10 are diagrams for explaining the determination of the merge boundary in the processing target division area D1. The case where the layer N1 acquired in step S230 of FIG. 6 is 1 and the layer N2 is 3 will be described. The boundary determination unit 16 sets the layer n to be processed to N1 (= 1) (step S240 in FIG. 6).
 図8は、階層nが1の場合の処理を示す。領域Eは、更新データが得られている領域を表す。処理対象分割領域D1において、更新データの領域Eに含まれない領域は、旧データはあるが、更新データが得られていない領域である。 FIG. 8 shows the processing when the layer n is 1. The area E represents an area where update data is obtained. In the processing target divided area D1, the area not included in the update data area E is an area in which the old data is present but the update data is not obtained.
 処理対象分割領域D1に隣接する分割領域のうち、分割領域D2及び分割領域D3には更新データが存在しない。そこで、境界決定部16は、処理対象分割領域D1と分割領域D2、D3との間の境界を、初期値のマージ境界Rとする(図6のステップS250)。 Of the division areas adjacent to the processing target division area D1, there is no update data in the division area D2 and the division area D3. Therefore, the boundary determination unit 16 sets the boundary between the processing target division area D1 and the division areas D2 and D3 as the initial value merge boundary R (step S250 in FIG. 6).
 次に、境界決定部16は、更新データの木構造データを参照して、処理対象分割領域D1における階層1のブロックB1-iそれぞれが、更新データの点を含むか否か判定する。なお、図8には、階層1の4つのブロックB1-0~B1-3が示されている。 Next, the boundary determination unit 16 refers to the tree structure data of the update data, and determines whether or not each of the blocks B1-i of the layer 1 in the processing target division area D1 includes the point of the update data. Note that FIG. 8 shows the four blocks B1-0 to B1-3 of the 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 containing the points of the update data and 0 to the blocks B1-i not including the points of the update data. The boundary determination unit 16 detects the first block B1-i to which 1 is assigned to each column of each block B1-i starting with the initial value of the merge boundary R. That is, the boundary determination unit 16 detects the block closest to the current (initial value) merge boundary R among the blocks B1-i having a value of 1 in each column.
 境界決定部16は、縦の列L1を構成するブロックB1-3、B1-2の両方とも値が1であるため、現在のマージ境界Rに近いブロックB1-3を検出する。境界決定部16は、検出したブロックB1-3にマージ境界Rが含まれるため、列L1についてはマージ境界Rを移動しない(図6のステップS260)。 The boundary determination unit 16 detects the block B1-3 close to the current merge boundary R because the values of both the blocks B1-3 and B1-2 constituting the vertical column L1 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 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 determination unit 16 detects block B1-1 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 determination 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 close to the current merge boundary R because the values of both the 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)。 The boundary determination unit 16 detects block B1-2 close to the current merge boundary R because the values of blocks B1-2 and B1-0 constituting the horizontal column L4 are both 1. 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)。 In the boundary determination unit 16, since the layer n to be processed has not reached the lower limit 2 of the layer (step S270: YES), the layer n to be processed is set to the layer 2 one level higher than the current 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 processing when the layer n is 2. The boundary determination unit 16 refers to the tree structure data of the update data, and determines whether or not each of the blocks B2-i-j of the layer 2 in the processing target division area D1 includes the point of the update data. The boundary determination unit 16 may limit the determination target to the child blocks of the blocks B1-1, B1-2, and B1-3 including the boundary in the layer 1 which is one layer above.
 境界決定部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 determination unit 16 assigns 1 to the block B2-i-j containing the points of the update data and 0 to the blocks B2-i-j not including the points of the update data. The boundary determination unit 16 detects the first block B2-i-j to which 1 is assigned to each of the columns of the blocks B2-i-j starting with the initial value of the merge boundary R. That is, the boundary determination unit 16 detects the block closest to the current merge boundary R among the blocks B2-i-j 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 determination unit 16 is the block B2-2-3 having a value of 1 among the blocks B2-3-3, B2-3-2, B2-2-3, and B2-2-2 constituting the vertical column L11. Is detected. The boundary determination 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 determination 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 determination 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 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 vertical column L13 headed by the block B2-1-3. Further, the boundary determination 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 in which the block B2-1-1 is the head. Since the detected blocks B2-1-3 and B2-1-1 include the current merge boundary R, the boundary determination unit 16 does not move the merge boundary R for the 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 column L15 next to the block B2-3-3 at the head. The boundary determination 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 determination unit 16 performs the same processing as described above for the horizontal rows L16 to L18.
 上記の処理により、横の列L17のマージ境界Rは初期値のままとなるが、横の列L18のマージ境界Rは、ブロックB2-2-2とブロックB2-2-0との間となる。これらマージ境界Rは不連続なため、境界決定部16は、列L17のマージ境界Rと列L18のマージ境界Rとを結ぶ。 By the above processing, the merge boundary R of the horizontal column L17 remains at the initial value, but the merge boundary R of the horizontal column L18 is between the block B2-2-2 and the block B2-2-0. .. Since these merge boundaries R are discontinuous, the boundary determination 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)。 In the boundary determination unit 16, since the layer n to be processed has not reached the lower limit 3 of the layer (step S270: YES), the layer n to be processed is set to the layer 3 one level higher than the present (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の子ブロックに限定してもよい。 FIG. 10 shows the processing when the layer n is 3. The boundary determination unit 16 refers to the tree structure data of the update data and determines whether or not each of the blocks of the layer 3 in the processing target division area D1 includes a point of the update data. The boundary determination unit 16 determines that the target of the determination is the blocks B2-1-4, B2-2-1, B2-2-3, B2-2-4, B2 including the boundary in the layer 2 which is one layer above. It may be limited to child blocks of 3-1, B2-3-2, and B2-3-3.
 境界決定部16は、第3階層のブロックのうち、更新データの点が含まれるブロックに1を付与し、更新データの点が含まれないブロックに0を付与する。境界決定部16は、第3階層のブロックに付与した値を用いて、図9と同様の処理を行い、マージ領域Rを移動する(図6のステップS260)。境界決定部16は、処理対象としている階層nが、階層の下限3に達したと判定する(図6のステップS270:NO)。 The boundary determination unit 16 assigns 1 to the block of the third layer that includes the point of the update data, and assigns 0 to the block that does not include the point of the update data. The boundary determination unit 16 performs the same processing as in FIG. 9 using the value assigned to the block in the third layer, and moves the merge area 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 layer (step S270: NO in FIG. 6).
 マージ部17は、旧データの処理対象分割領域のブロックのうち、決定したマージ境界よりも更新データ側のブロックを、更新データのそのブロックに置き換える(図6のステップS290)。 The merge unit 17 replaces the block on the update data side of the determined merge boundary among the blocks in the processing target division 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ブロック分移動させる。 The boundary determination unit 16 may perform the process shown in FIG. 11 instead of the process shown in FIG. FIG. 11 is a flow chart showing a merge boundary determination process of the merge area detection device 1. In FIG. 11, the same processing as in FIG. 6 is designated by the same reference numerals, and the description thereof will be omitted. The process shown in FIG. 11 differs from the process shown in FIG. 6 in that the process of step S310 is performed before the process of step S290. In step S310, the boundary determination unit 16 moves the merge boundary by one block in the direction of the area where the update 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 determination unit 16 processes the merge boundary R determined as shown in FIG. 10 in step S310 of FIG. As shown in FIG. 12, the boundary determination unit 16 moves the merge boundary R shown in FIG. 10 in the direction of the update data E by one block.
 図6に示す処理(処理Aと記載)と、図11に示す処理(処理Bと記載)とは、マージ境界を更新データのぎりぎりよりも外側にするか少し内側にするかの違いである。処理Aの場合、更新データを全て残した形でのマージが可能となる。一方、更新データは境界の内側に隣接するブロック内ではその一部のみに存在する可能性があり、このブロックに関する点群が疎になる恐れがある。これは、ステップS290によるマージ後、図10における斜線のブロック内の領域Eの外の部分には、点が含まれないことによる。処理Bでは、マージ境界には旧データを用いて、それより内側の確実にブロック全体に更新データが存在するであろう領域のみを更新データで埋める。これにより、境界が疎になることを避けられる可能性がある。 The process shown in FIG. 6 (described as process A) and the process shown in FIG. 11 (described as process B) are the difference between making the merge boundary outside or slightly inside the edge of the update data. In the case of process A, it is possible to merge with all the updated data left. On the other hand, the update data may exist only in a part of the block adjacent to the inside of the boundary, and the point cloud related to this block may be sparse. This is because, after merging in step S290, the part outside the region E in the shaded block in FIG. 10 does not include a point. In the process B, the old data is used for the merge boundary, and only the area inside the block where the update data is surely present is filled with the update data. This may prevent the boundaries from becoming sparse.
 なお、上記では、マージ領域検出装置1は、旧データに対して、更新データにより更新する対象領域を抽出している。そして、マージ領域検出装置1は、旧データと更新データとをマージする際に、旧データの領域のうち更新データが含まれない領域を検出し、その検出した領域に旧データを残して更新データを足し合わせる。しかし、マージ領域検出装置1は、旧データに対して、更新しない領域を抽出してもよい。その場合、置換部15は、ステップS120において、旧データの分割領域のうち、更新データが存在しない分割領域を特定する。置換部15は、特定した分割領域を更新データに付加し、付加した分割領域を、その分割領域の旧データに置き換える。そして、ステップS220において、置換部15は、処理対象分割領域を更新データのままとする。ステップS290において、マージ部17は、更新データの処理対象分割領域のブロックのうち、決定したマージ境界よりも旧データ側のブロックを、旧データの同じ位置のブロックに置き換える。 In the above, the merge area detection device 1 extracts the target area to be updated by the update data from the old data. Then, when the merge area detection device 1 merges the old data and the update data, the merge area detection device 1 detects an area of the old data area that does not include the update data, and leaves the old data in the detected area to update the data. Add together. However, the merge area detection device 1 may extract an area that is not updated from the old data. In that case, in step S120, the replacement unit 15 specifies the divided area in which the updated data does not exist among the divided areas of the old data. The replacement unit 15 adds the specified divided area to the update 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 division area as the update data. In step S290, the merging unit 17 replaces the block on the old data side of the determined merge boundary among the blocks in the processing target divided area of the update data with the block at the same position of the old data.
(第2の実施形態)
 第1の実施形態においては、旧データと更新データをマージする領域を3次元的に判定している。第2の実施形態では、z軸(地面に垂直な軸)方向に点を射影し、マージする領域を2次元的に判定する。これにより、マージ領域検出装置の処理を軽量化及び単純化できる。第2の実施形態を、第1の実施形態との差分を中心に説明する。
(Second embodiment)
In the first embodiment, the area for merging the old data and the updated data is determined three-dimensionally. In the second embodiment, points are projected in the z-axis (axis perpendicular to the ground) direction, and the area to be merged is determined two-dimensionally. As a result, the processing of the merge area detection device can be reduced in weight and simplified. The second embodiment will be described with a focus 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 the 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 designated by the same reference numerals, and the description thereof will be omitted. The difference between the merge area detection device 2 and the merge area detection device 1 shown in FIG. 1 is that the merge area detection device 2 includes a conversion unit 24 and a boundary determination unit 26 in place of the conversion unit 14 and the boundary determination unit 16.
 変換部24は、変換部14と同様の処理を行う。さらに、変換部24は、分割領域と、その分割領域に含まれる更新データの各点とを2次元平面に射影する。変換部24は、2次元の分割領域毎に、その分割領域に射影された点群データを、4分木データにより表した木構造データを生成する。境界決定部26は、旧データと更新データとが重なる分割領域について、2次元平面に変換された更新データを用いてマージ境界を定める。 The conversion unit 24 performs the same processing as the conversion unit 14. Further, the conversion unit 24 projects the divided area and each point of the update data included in the divided area onto a two-dimensional plane. The conversion unit 24 generates tree structure data in which the point cloud data projected on the divided region is represented by the quadtree data for each of the two-dimensional divided regions. The boundary determination unit 26 determines a merge boundary using the update data converted into a two-dimensional plane for the divided region where the old data and the update data overlap.
 図14及び図15を用いて、2次元平面に射影した点の木構造データを算出する例を説明する。これらの図は、z軸方向への射影を示す。 An example of calculating the tree structure data of the points projected on the 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 conversion from octatree data to quadtree 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, there are points only in blocks B-2 and B-3. Therefore, the node N-2 is connected to the nodes B-2-0 to B-2-7 corresponding to each of the blocks B-2-0 to B-2-7, which are child blocks of the node N-2. .. Similarly, the node N-3 is connected to the nodes B-3-0 to B-3-7 corresponding to each of the blocks B-3-0 to B-3-7, which are child blocks of the node N-3. The node. Each node is given a "1" if there is a point, and a "0" if there is no 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 node values corresponding to each of the overlapping blocks 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, respectively, z. It overlaps in the axial direction. The conversion unit 24 uses the block value of the plane that projects the block B-0 and the block B-1 overlapping in the z-axis direction as the logical sum of the value of the node N-1 and the value of the node N-2. .. Similarly, the conversion unit 24 sets the block value of the plane that projects the blocks B-2 and the blocks B-3 that overlap in the z-axis direction as the logic of the value of the node N-2 and the value of the node N-3. It is a sum. At this time, the conversion unit 24 calculates the logical sum of the value of the node N-2-j corresponding to the child block at the same position and the value of the node N-3-j. The conversion unit 24 performs a process of calculating the block value of the plane that projects the blocks overlapping in the z-axis direction with respect to 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 on a two-dimensional plane. As shown in FIG. 15A, 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 coordinates of the xy plane. FIG. 15B is a diagram showing a divided region in which a three-dimensional divided region overlapping in the z-axis direction is projected onto the xy plane. The conversion unit 24 generates four child blocks by dividing the divided region into two equal parts in each of the two directions (x-axis and y-axis) orthogonal to each other. 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 transforming unit 24 uses the coordinates of the projected points to generate a tree-structured node corresponding to each block of the layered plane. The conversion unit 24 assigns a block value indicating whether or not each of the child blocks having the block as a parent block contains a point to the node corresponding to the block containing the point, and creates the quadtree data. ..
 マージ領域検出装置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 chart showing the merge boundary determination process of the merge area detection device 2. In FIG. 16, the same processing as in FIG. 6 is designated by the same reference numerals, and the description thereof will be omitted. The process shown in FIG. 16 is different from the process shown in FIG. 6 in that the merge area detection device 2 performs the process of step S410 before the process of 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 that projects the division area to be processed. Then, the boundary determination unit 26 of the merge area detection device 2 performs the processing 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 the block of the divided area to be processed of the old data, which is closer to the adjacent divided area where the updated data exists than the determined merge boundary, with the updated data of the block. The boundary determination unit 26 determines the merge boundary in the plane. Therefore, the merge unit 17 replaces using the merge boundary determined by the boundary determination unit 26 regardless of the position of the z-axis of the processing target division region.
 なお、マージ領域検出装置2は、xy平面への射影が同一の複数の処理対処領域については、図16のステップS210~ステップS270の処理を一度行えばよい。また、マージ領域検出装置2は、ステップS410の処理をステップS230の処理の後に行ってもよい。また、マージ領域検出装置2は、ステップS290の処理の前に、図11のステップS310の処理を行ってもよい。 The merge area detection device 2 may perform the processes of steps S210 to S270 of FIG. 16 once for a plurality of processing coping areas having the same projection on the xy plane. Further, the merge area detection device 2 may perform the process of step S410 after the process of step S230. Further, 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 weight reduction and simplification of processing, there are the following merits. That is, it is assumed that when updating the 3D data on the map, the situation where the building was built on the vacant lot is acquired when there is a shield such as a car between the building and Lidar. .. In this case, the existence information of the building regarding the space where the ground of the vacant lot existed cannot be obtained, and there is a possibility that the ground of the vacant lot is below and the building is only above. However, when a point is projected in the z-axis direction, the lower ground can be deleted only by the information that the upper side of the building exists, and the state can be updated only with new data.
 旧データに対して、更新データで差し替えるだけであれば、階層化された旧データの木構造の一部を更新データの木構造にマージすることで対応可能である。しかし、更新データに差し替える範囲がわからないときには、その差し替えを行う領域を判定する技術が必要である。上述した実施形態により、差し替えを行う領域を判定することができる。 If you just want to replace the old data with the updated data, you can handle it by merging a part of the hierarchical old data tree structure into the updated data tree structure. However, when the range to be replaced with the updated data is unknown, a technique for determining the area to be replaced is required. According to the above-described embodiment, the area to be replaced can be determined.
 また、上述した実施形態では、旧データ及び更新データの領域内部は全て連続したデータ、つまり凸の形状の領域のデータであることを前提としている。これは、点群データが連続した空間に対して取得されるため、一般的に離れた領域のデータは取得されないことを想定したものである。例えば、点群データがドーナツ形に取得されたような場合も想定される。その場合には、ステップS120における分割領域への分割によって対応可能である。 Further, in the above-described embodiment, it is premised that the inside of the area of the old data and the updated data is all continuous data, that is, the data of the convex shape area. This is based on the assumption that since the point cloud data is acquired for a continuous space, the data in a distant region is generally not acquired. For example, it is assumed that the point cloud data is acquired in a donut shape. In that case, it can be dealt with by the division into the division area 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 the old data and the updated data. In addition, the explanation so far has been made when there is duplication of the point cloud between the old data and the updated data. A configuration for determining whether the area included in the update data includes an area that does not overlap with the old data is further added, and the merge area detection devices 1 and 2 do not look at the area of the update data that does not overlap with the old data in detail. May be processed. For example, if the boundary determination units 16 and 26 can confirm that all the old data in the area (on the update data side) inside the determined merge boundary is 0, the boundary determination units 16 and 26 terminate the determination process of the lower hierarchy. May be good.
 上記においては、点群データを共通の大きさの分割領域に分割し、各分割領域を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, the point cloud data is divided into division areas of a common size, and each division area is converted into octal tree data and merged. On the other hand, in PCC (Point Cloud Compression), which is being formulated in MPEG (Moving Picture Experts Group) standardization, especially in G-PCC for space and stationary objects, point cloud data is converted to octal tree representation and then arithmetic code. Be made. Therefore, when one or both of the old data and the updated data is a G-PCC stream which is compressed data, the ocree processing is not necessary when the merging processing is performed by a common block. The G-PCC stream may be arithmetically decoded and merged using the ocree data. That is, in the merge process using the once compressed G-PCC stream instead of the point cloud data itself, the process can be performed without conversion to an octal tree. In this way, the old data and the updated data of the G-PCC stream can be merged without completely decoding the coordinate data. Further, when MPEG is used, it is possible to use the information in the G-PCC stream as the information corresponding to the header information for each block (coding unit).
 ここまでは8分木構造のデータを利用して復号せずにマージする実施形態について説明を行った。ここから、8分木構造のデータを二値化値などに変換したストリームデータを用いても、逆変換を行わずにマージを可能とする手法について説明する。前述したように、ヘッダ情報を用いることで更新データが表現する現実空間の領域と対応する旧データの領域を特定することができる。領域を特定することができれば、特定された領域を更新データのストリームのペイロードを用いて旧データから置き換えることで、逆変換をせずにマージすることができる。 Up to this point, the embodiment of merging without decoding using the data of the octaree structure has been explained. From here, a method that enables merging without performing inverse conversion will be described even if stream data obtained by converting data having an octa-tree structure into binarized 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 corresponding to the area of the real space represented by the updated data. If the area can be specified, the specified area can be merged without inverse conversion by replacing the old data with the payload of the stream of update data.
 なお、上記においては、立方体の親ブロックを8つの立方体の子ブロックに分割しているが、親ブロック及び子ブロックは立方体でなくてもよい。例えば、親ブロックがn個の子ブロックに分割される場合、上述のように8分木構造で表現した木構造データに代えて、点が含まれる空間領域をn分木構造で表現したn分木構造データが用いられる。 In the above, the parent block of the cube is divided into eight child blocks of the cube, but the parent block and the child block do not have to be cubes. For example, when the parent block is divided into n child blocks, the spatial area containing the points is represented by the n-branch structure instead of the tree-structured data represented by the octa-tree structure as described above. Tree structure data is used.
 上述した実施形態におけるマージ領域検出装置1、2の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。 The functions of the merge area detection devices 1 and 2 in the above-described embodiment 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 by a computer system and executed. The term "computer system" as used herein includes hardware such as an OS and peripheral devices. Further, the "computer-readable recording medium" refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, and a storage device such as a hard disk built in a computer system. Further, a "computer-readable recording medium" is a communication line for transmitting a program via a network such as the Internet or a communication line such as a telephone line, and dynamically holds the program for a short period of time. It may also include a program that holds a program for a certain period of time, such as a volatile memory inside a computer system that is a server or a client in that case. Further, the above-mentioned program may be for realizing a part of the above-mentioned functions, and may be further realized by combining the above-mentioned functions with a program already recorded in the computer system.
 マージ領域検出装置1、2のハードウェア構成例を説明する。図11は、マージ領域検出装置1、2のハードウェア構成例を示す装置構成図である。マージ領域検出装置1は、プロセッサ71と、記憶部72と、通信インタフェース73と、ユーザインタフェース74とを備える。 A hardware configuration example of the merge area detection devices 1 and 2 will be described. FIG. 11 is a device configuration diagram showing a hardware configuration example of the merge area detection devices 1 and 2. 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 controls. The 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 area detection devices 1 and 2 may be realized by using hardware such as ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), and FPGA (Field Programmable Gate Array). The storage unit 72 further has a work area for the processor 71 to execute various programs and the like. The communication interface 73 is connected so as to be able to communicate with another device. The user interface 74 is an input device such as a keyboard, a pointing device (mouse, tablet, etc.), a button, a touch panel, and a display device such as a display. An artificial operation is input by the user interface 74. For example, the user interface 74 inputs information on the upper limit layer and information on the lower limit layer.
 マージ領域検出装置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 the network. In this case, it may be arbitrary which of these plurality of computer devices realizes each of the functional units of the merge area detection devices 1 and 2. Further, the same functional unit may be realized by a plurality of computer devices.
 上述した実施形態によれば、マージ領域検出装置は、取得部と、境界決定部とを有する。取得部は、例えば、実施形態の変換部14である。取得部は、所定の空間内の一部の空間における各点の位置の情報を含む第一点群データを、その所定空間を複数の階層からなる木構造の領域に分割した領域ごとの点の有無の情報により表した木構造データを取得する。所定の空間は、実施形態の分割領域に相当し、領域は、ブロックに相当する。境界決定部は、木構造データの階層において点が存在する最も上位の階層に基づいて、所定の空間において第一点群データと、その所定の空間内の少なくとも一部の空間における各点の情報を含む第二点群データとをマージする際の境界であるマージ境界を、領域の単位で決定する。 According to the above-described embodiment, the merge area detection device has an acquisition unit and a boundary determination unit. The acquisition unit is, for example, the conversion unit 14 of the embodiment. The acquisition unit divides the first point cloud data including the position information of each point in a part of the space in the predetermined space into the area of the tree structure consisting of a plurality of layers, and the point in each area. Acquire the tree structure data represented by the presence / absence information. The predetermined space corresponds to the divided area of the embodiment, and the area corresponds to the block. The demarcation unit determines the first point cloud data in a predetermined space and the information of each point in at least a part of the space in the predetermined space, based on the highest hierarchy in which the points exist in the hierarchy of the tree structure data. The merge boundary, which is the boundary when merging with the second point cloud data including, is determined in the unit of the area.
 境界決定部は、所定空間に隣接する空間である隣接空間のうち第一点群データの点が存在しない隣接空間と所定の空間との境界とを初期値のマージ境界とする初期値設定処理と、判定対象の階層の領域に第一点群データの点が存在するか否かを判定し、点が存在しない領域から点が存在する領域へ変わる境界にマージ境界を移動する処理を、判定対象の階層を上位の階層から下位の階層に変更しながら繰り返す繰り返し処理とを行ってもよい。 The boundary determination unit performs initial value setting processing in which the boundary between the adjacent space where the point of the first point cloud data does not exist and the predetermined space among the adjacent spaces which are adjacent to the predetermined space is used as the merge boundary of the initial values. , Judgment target is the process of determining whether or not a point in the first point cloud data exists in the area of the hierarchy to be determined, and moving the merge boundary to the boundary where the area where the point does not exist changes to the area where the point exists. It may be repeated while changing the hierarchy of the above from the upper hierarchy to the lower hierarchy.
 マージ領域検出装置は、マージ部をさらに備えてもよい。マージ部は、境界決定部により決定されたマージ境界に基づいて、第一点群データの点と第二点群データの点とをマージする。 The merge area detection device may further include a merge unit. The merge unit merges the points of the first point cloud data and the points of the second point cloud data based on the merge boundary determined by the boundary determination unit.
 マージ領域検出装置は、分割部をさらに備えてもよい。分割部は、木構造データの生成単位の分割領域に、前記第一点群データが表す空間と、前記第二点群データが表す空間とを分割する。マージ部は、第一点群データの点が存在し、かつ、第二点群データが存在しない分割領域には、第一点群データの点の情報を用いる。また、マージ部は、隣接する分割領域全てに第一点群データの領域が含まれる分割領域にも、第一点群データの点の情報を用いる。さらに、マージ部は、隣接する分割領域のいずれかに第一点群データの領域が含まれない分割領域には、当該分割領域を所定空間として境界決定部が決定したマージ境界に基づいて第一点群データの点と第二点群データの点とをマージする。マージ部は、例えば、実施形態の置換部15及びマージ部17である。 The merge area detection device may further include a division portion. The division unit divides the space represented by the first point cloud data and the space represented by the second point cloud data into the division area of the tree structure data generation unit. The merge unit uses the point information of the first point cloud data in the divided region where the points of the first point cloud data exist and the second point cloud data does not exist. Further, the merging unit also uses the point information of the first point cloud data in the divided area in which the area of the first point cloud data is included in all the adjacent divided areas. Further, in 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 unit is first based on the merge boundary determined by the boundary determination unit with the divided area as a predetermined space. Merge the points in the point cloud data with the points in the second point cloud data. The merging unit is, for example, the replacement unit 15 and the merging unit 17 of the embodiment.
 以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこれら実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to these embodiments, and includes designs and the like within a range that does not deviate from the gist of the present invention.
1…マージ領域検出装置、2…マージ領域検出装置、11…記憶部、12…入力部、13…分割部、14…変換部、15…置換部、16…境界決定部、17…マージ部、24…変換部、26…境界決定部、71…プロセッサ、72…記憶部、73…通信インタフェース、74…ユーザインタフェース 1 ... merge area detector, 2 ... merge area detector, 11 ... storage unit, 12 ... input unit, 13 ... division unit, 14 ... conversion unit, 15 ... replacement unit, 16 ... boundary determination unit, 17 ... merge unit, 24 ... Conversion unit, 26 ... Boundary determination unit, 71 ... Processor, 72 ... Storage unit, 73 ... Communication interface, 74 ... User interface

Claims (6)

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

Priority Applications (2)

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

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 (1)

Publication Number Publication Date
WO2022097279A1 true WO2022097279A1 (en) 2022-05-12

Family

ID=81457095

Family Applications (1)

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

Country Status (2)

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

Citations (4)

* 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 Control system for dot information
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

Patent Citations (4)

* 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 Control system for dot information
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
JP7453586B2 (en) 2024-03-21
JPWO2022097279A1 (en) 2022-05-12

Similar Documents

Publication Publication Date Title
CN113615181B (en) Method and device for point cloud encoding and decoding
US7499053B2 (en) Real-time precision ray tracing
US10417821B2 (en) Method of simplifying a geometry model
US11936846B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2014200914A1 (en) Scalable volumetric 3d reconstruction
WO2021258374A1 (en) Method for encoding and decoding a point cloud
JP2023531706A (en) Encoding and decoding methods, encoders, decoders and software
CN113812164A (en) Method and device for processing point clouds
US10614178B2 (en) Scalable and precise fitting of NURBS surfaces to large-size mesh representations
JP4972642B2 (en) High-precision real-time ray tracing
CN113826029A (en) Method for coding copy points and isolated points in point cloud coding and decoding
CN113544747B (en) Method and device for geometric merging mode of point cloud coding and decoding
KR20160125172A (en) Ray tracing apparatus and method
WO2022097279A1 (en) Merge region detection method, merge region detection device, and program
CN113315977A (en) Method and device for decoding point cloud information
JP7307390B2 (en) NOISE JUDGMENT METHOD, NOISE JUDGMENT DEVICE AND PROGRAM
CN115486079A (en) Method and device for constructing three-dimensional geometry
CN114600464A (en) Method for encoding and decoding, encoder, decoder and software
WO2022097219A1 (en) Detection method, detection device, and program
CN116152404B (en) Animation redirection method, device, computer equipment and storage medium
KR20240026233A (en) METHOD FOR ENCODING AND DECODING A POINT CLOUD
Wu et al. Unitypic: Unity point-cloud interactive core
CN117974899A (en) Three-dimensional scene display method and system based on digital twinning
Dokken et al. Locally Refined Splines Representation for Geospatial big Data
CN117315114A (en) Scene data processing method, device, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20960831

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022560606

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20960831

Country of ref document: EP

Kind code of ref document: A1