Position estimation device, position estimation method, and position estimation program
The position estimation device effectively addresses the challenge of missing data in LiDAR point clouds by clustering and slicing street tree data to estimate positions using representative points and approximation lines, ensuring accurate street tree recognition.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-04
- Publication Date
- 2026-04-01
AI Technical Summary
Existing technologies struggle to accurately estimate the position of street trees using LiDAR data when portions of the three-dimensional point cloud are missing, particularly due to occlusions and dense planting, which complicates clustering and threshold setting.
A position estimation device and method that divides the point cloud into clusters, slices these clusters horizontally, estimates the trunk centroid, and assigns identification information to representative points within a threshold range, allowing for accurate position estimation based on approximation lines.
Enables the estimation of street tree positions even with missing data, ensuring accurate recognition and mapping of street trees.
Smart Images

Figure 0007838645000001 
Figure 0007838645000002 
Figure 0007838645000003
Abstract
Description
[Technical Field]
[0001] The disclosed technology relates to a position estimation device, a position estimation method, and a position estimation program. [Background technology]
[0002] Technology is being developed to recognize objects such as buildings or utility poles using three-dimensional point clouds measured by LiDAR (Light Detection and Ranging), an example of a measuring device mounted on automobiles and other vehicles that measures the three-dimensional position of each point in three-dimensional space, and to present them as a three-dimensional map. In particular, being able to recognize the position and shape of each individual street tree planted along a road on a three-dimensional map is an important technology for road management organizations to understand the condition of street trees and plan pruning.
[0003] For example, Non-Patent Document 1 proposes a technique for instantiating trees using only three-dimensional point cloud information. This technique focuses on the fact that different objects have distance between them, and uses Euclidean cluster extraction to propose a clustering technique that corresponds to the distance of each point in three-dimensional space. Specifically, in Euclidean cluster extraction, the same ID (Identification) is assigned to the point cloud that exists in the region from a predetermined starting point to a predetermined threshold. [Prior art documents] [Non-patent literature]
[0004] [Non-Patent Document 1] Katsuya Ogura, Yuma Yamada, Sogo Kajita, Hirozumi Yamaguchi, Teruo Higashino, Mineo Takai, "Investigation of a method for separating three-dimensional point clouds composed of multiple three-dimensional objects," Proceedings of the IPSJ Multimedia, Distributed, Cooperative and Mobile (DICOMO2018) Symposium, pp. 236-246, 2018. [Overview of the project] [Problems that the invention aims to solve]
[0005] When LiDAR is mounted on a vehicle, the three-dimensional point cloud measured by the LiDAR does not include the point cloud of the surface of street trees on the sidewalk or building side, which is on the opposite side of the roadway. Also, if street trees are planted densely, occlusion areas occur that are blind spots for the LiDAR. The technology in Non-Patent Literature 1 assumes that there is distance between different objects, so when a three-dimensional point cloud with some missing data is input, it is difficult not only to divide the instances across the missing parts, but also to set the optimal threshold for clustering.
[0006] The disclosed technology was developed in view of the above points, and aims to provide a position estimation device, a position estimation method, and a position estimation program that can estimate the position of each individual street tree even when a portion of the three-dimensional point cloud of street trees is missing. [Means for solving the problem]
[0007] A first aspect of this disclosure is a position estimation device comprising: a division unit that divides a three-dimensional point cloud of street trees, measured by a measuring device that measures the three-dimensional position of each point in three-dimensional space, into a plurality of first clusters; a division unit that divides the first clusters into a plurality of regions in the horizontal direction; a trunk estimation unit that propagates and assigns identification information to a representative point of a second cluster divided from the region, to the representative point of the second cluster divided from the region, which is located within a first threshold range from the representative point and has a higher coordinate in the height direction than the region; and a position estimation unit that selects the representative point to which the same identification information has been assigned, and estimates the position of the street tree based on an approximation line calculated from the selected representative point.
[0008] A second aspect of this disclosure is a position estimation method comprising: a division unit dividing a three-dimensional point cloud of street trees, measured by a measuring device that measures the three-dimensional position of each point in three-dimensional space, into a plurality of first clusters; a cutting unit dividing the first clusters into a plurality of regions in the horizontal direction; a trunk estimation unit propagating and assigning identification information to representative points of second clusters divided from the regions, which are located within a first threshold range from the representative points and have coordinates higher in the height direction than the regions; and a position estimation unit selecting representative points to which the same identification information has been assigned, and estimating the position of the street trees based on an approximation line calculated from the selected representative points.
[0009] A third aspect of this disclosure is a position estimation program, which causes a computer to function as a component of the position estimation device of the first aspect described above. [Effects of the Invention]
[0010] According to the disclosed technology, it is possible to estimate the location of a street tree even if a portion of the three-dimensional point cloud of that street tree is missing. [Brief explanation of the drawing]
[0011] [Figure 1] This is a schematic diagram showing an example of the hardware configuration of the position estimation device according to the embodiment. [Figure 2] This is a block diagram showing an example of the functional configuration of a position estimation device according to an embodiment. [Figure 3] This is a schematic diagram showing an example of a three-dimensional point cloud of a street tree with a portion missing according to the embodiment. [Figure 4] This is a schematic diagram showing an example of dividing a three-dimensional point cloud according to the embodiment into clusters. [Figure 5] This is a schematic diagram showing an example of a cluster according to the embodiment being cut into seven sections horizontally. [Figure 6] This is a schematic diagram showing an example of a principal ID assigned to the centroid of a second cluster obtained from the slice with the minimum height coordinate according to the embodiment. [Figure 7] This schematic diagram shows an example of a principal ID assigned to the centroid of a second cluster obtained from a slice whose height coordinate is not the minimum according to the embodiment. [Figure 8] This is a schematic diagram showing an example of an instanced street tree according to the embodiment. [Figure 9] This is a schematic diagram showing an example of an approximate straight line according to the embodiment. [Figure 10] This is a flowchart showing an example of the position estimation process in the position estimation device of the embodiment. [Modes for carrying out the invention]
[0012] An example of an embodiment of the disclosed technology will be described below with reference to the drawings. In each drawing, identical or equivalent components and parts are given the same reference numerals. Furthermore, the dimensional ratios in the drawings are exaggerated for illustrative purposes and may differ from actual ratios.
[0013] First, the hardware configuration of the position estimation device 10 according to this embodiment will be described. As shown in Figure 1, the position estimation device 10 has a CPU (Central Processing Unit) 11, ROM (Read Only Memory) 12, RAM (Random Access Memory) 13, storage 14, and a communication I / F (Interface) 17. Each component is connected to the others so as to be able to communicate with each other via a bus 19.
[0014] The CPU 11 is a central processing unit that executes various programs and controls various parts. Specifically, the CPU 11 reads a program from the ROM 12 or storage 14 and executes the program using the RAM 13 as a working area. The CPU 11 controls each of the above components and performs various calculations according to the program stored in the ROM 12 or storage 14. In this embodiment, the ROM 12 or storage 14 stores a position estimation program. The position estimation program may be a single program or a group of programs consisting of multiple programs or modules.
[0015] ROM12 stores various programs and data. RAM13 temporarily stores programs or data as a working area. Storage14 consists of an HDD (Hard Disk Drive) or SSD (Solid State Drive) and stores various programs, including the operating system, and various data.
[0016] Communication I / F17 is an interface for communicating with other devices, and standards such as Ethernet®, FDDI, and Wi-Fi® are used.
[0017] Next, the functional configuration of the position estimation device 10 will be described. As shown in Figure 2, the position estimation device 10 includes a division unit 101, a segmentation unit 102, a main estimation unit 103, an assignment unit 104, and a position estimation unit 105.
[0018] The division section 101 is a three-dimensional point cloud X of street trees, as shown in Figure 3, measured by LiDAR, which is an example of a measuring device that measures the three-dimensional position of each point in three-dimensional space, and a threshold θ. x The input is accepted as follows. As mentioned above, the three-dimensional point cloud X may have some missing data. The division unit 101 then uses the Euclidean cluster extraction method to divide the three-dimensional point cloud X into a first cluster, cluster D. i Divide into clusterD i Output the cluster set D, which is the set of elements.
[0019] Specifically, the splitting unit 101 sets a starting point from the received three-dimensional point cloud X. Then, the splitting unit 101 determines all points within the Euclidean distance (i.e., the straight-line distance between two points) from the set starting point being within the threshold θ x to be set as the cluster D i Further, the splitting unit 101 determines all points within the Euclidean distance from one point included in the set cluster D i being within the threshold θ x to be included in the said cluster D i By executing this process for all points included in the cluster D i the three-dimensional point cloud X is split into the cluster D i .
[0020] Then, the splitting unit 101 newly sets a starting point from the point cloud excluding the cluster D i from the three-dimensional point cloud X. And the splitting unit 101 repeats the process of splitting the three-dimensional point cloud X into a plurality of clusters D i until all points included in the received three-dimensional point cloud X are included in any of the clusters D i . Then, the splitting unit 101 transfers the split plurality of clusters D i as the cluster set D to the slicing unit 102 and the assigning unit 104.
[0021] FIG. 4 shows an example in which the splitting unit 101 splits the three-dimensional point cloud X shown in FIG. 3 into clusters D1 to D8.
[0022] The slicing unit 102 receives the cluster set D and the number of slices N as inputs. Then, the slicing unit 102 slices one cluster D i within the cluster set D into N slices in the horizontal direction, and outputs slice regions S up to S1, ···, S N . Specifically, the number of points included in the slice S j as a region is the cluster D iThe segmentation unit 102 selects cluster D from the coordinate plane that minimizes the height coordinates, so that the number of three-dimensional point clouds p included is divided by the number of slices N. i The slices are sequentially cut out and the slice region S is output. In this embodiment, the j-th cut slice, in other words, the slice with the j-th smallest height coordinate, is slice S. j Let's assume that the slice with the minimum coordinate in the height direction is slice S1 as the first region, and the slice with the maximum coordinate in the height direction is slice S N The cutting unit 102 then hands over the slice region S to the main trunk estimation unit 103.
[0023] Figure 5 shows that the separation section 102 is cluster D i An example of cutting it into seven horizontal sections is shown. Specifically, the cut section 102 consists of a slice S1 as the first region, a slice S2 with the second smallest height coordinate, a slice S3 with the third smallest height coordinate, a slice S4 with the fourth smallest height coordinate, a slice S5 with the fifth smallest height coordinate, a slice S6 with the sixth smallest height coordinate, a slice S7 with the seventh smallest height coordinate, and a cluster D i It is cut horizontally.
[0024] The main estimation unit 103 uses a slice region S and a threshold θ. s And, threshold θ d And, threshold θ p And, threshold θ t The system accepts the following as input. The main estimation unit 103 uses the Euclidean cluster extraction method to determine a threshold θ for slice S1. s Clustering is performed. The main estimation unit 103 then determines that the density of the included points is a second threshold θ. d A higher threshold, and the number of points included, is the third threshold θ. p The second cluster, which has more members, is obtained and separated from slice S1. The trunk estimation unit 103 then estimates the centroid Y1, which is the representative point of the second cluster separated from slice S1, as the center coordinate of the trunk of the street tree. The trunk estimation unit 103 assigns a trunk ID to each centroid Y1 as identification information to identify the centroid Y1.
[0025] Figure 6 shows an example of a principal ID assigned by the principal estimation unit 103 to the centroid Y1 of the second cluster obtained from slice S1. In the example shown in Figure 6, the principal estimation unit 103 determines that the density of included points is a threshold θ d A higher threshold θ is obtained when the number of points included is higher. p The most numerous centroids Y1, from the first to the third from the left, are assigned principal IDs from 1 to 3. Then, the principal estimation unit 103 determines the density of the included points to be a threshold θ. d The number of points below or including the threshold θ p The rightmost cluster below will be excluded as noise and will not be assigned a principal ID.
[0026] The main estimation unit 103 analyzes slice S other than slice S1. k Centroid Y of the second cluster separated from k Each is assigned a main ID. k is a value other than 1. Specifically, the main estimation unit 103 determines the centroid Y k The first threshold is the threshold θ t It is located within the range of slice S k Slice S, which has a lower coordinate in the height direction. k-1 The centroid Y of the second cluster separated from the first cluster. k-1 Of these, the main ID assigned to the nearest centroid is assigned. The main ID is assigned to the centroid Y k From threshold θ t Center of gravity Y within the range k-1 If it does not exist, the centroid Y k A new main ID is assigned to it. Then, the main estimation unit 103 determines the centroid Y1, ..., Y N These are output as a set of principal coordinates Y, and the set of principal coordinates Y is passed to the assignment unit 104 and the position estimation unit 105.
[0027] Thus, the main estimation unit 103 determines slice S j From threshold θ t It is located within the range of slice S jThe trunk ID is assigned by propagating it to the centroid of a second cluster, which is divided from a slice with a higher coordinate in the height direction. As a result, even if the three-dimensional point cloud X of a street tree has some missing parts due to branching, for example, the trunk estimation unit 103 assigns the same trunk ID to the parts of the street tree that have been divided into different second clusters due to the missing parts, thereby preventing instances from being divided across the missing parts.
[0028] Figure 7 shows the main estimation unit 103, which determines the centroid Y k An example of a principal ID assigned to it is shown. The principal estimation unit 103 determines the centroid Y k From threshold θ t It is located within the range of slice S k-1 The centroid Y of the second cluster separated from the first cluster. k-1 Of these, the same main circuit ID (1 to 3 in the example shown in Figure 7) as the main circuit ID assigned to the nearest centroid is assigned. Then, the main circuit estimation unit 103 determines the centroid Y k From threshold θ t Center of gravity Y within the range k-1 If it does not exist (in the example shown in Figure 7, the centroid of the second cluster on the far right), then the centroid Y k A new principal ID (4 in the example shown in Figure 7) is assigned to it.
[0029] The assignment unit 104 accepts the cluster set D and the principal coordinate set Y as input. The assignment unit 104 accepts D i For each point included in the set, the centroid Y of the set of principal coordinates Y that is closest to that point. j The same main ID as the one assigned to the previous point cloud Z is assigned. The assignment unit 104 then assigns the same main ID to the point cloud Z. i Outputs.
[0030] Figure 8 shows an example of a street tree instantiated by the attachment unit 104. The attachment unit 104 is D i Among the points included, the point closest to the centroid Y (in the example shown in Figure 8, marked with a triangle) to which the main ID 1 has been assigned is assigned the main ID 1. In addition, the assignment unit 104 assigns D iAmong the points included, the point closest to the centroid Y (marked with an X in the example shown in Figure 8), which is assigned the principal ID 2, is assigned the principal ID 2. In addition, the assignment unit 104 assigns D i Among the points included, the point closest to the centroid Y (indicated by a circle in the example shown in Figure 8) which is assigned the principal ID 3, is assigned the principal ID 3. As a result, as shown in Figure 8, the assignment unit 104 can instantiate each individual street tree.
[0031] The position estimation unit 105 determines the ground height g i and the set of principal coordinates Y i The input is accepted as and. Then, the position estimation unit 105 calculates each S j From the coordinates in the height direction, in ascending order, the centroid Y is assigned the same main ID. j Select the centroid Y that is assigned the same main ID. w is the same slice S w If included, the selection is terminated. Specifically, the position estimation unit 105 selects from the centroid Y1 the centroid Y that has been assigned the same main ID w Slice S w Slice S, which has a lower coordinate in the height direction. w-1 The center of gravity Y included w-1 Up to this point, the centroid Y coordinates are assigned the same main ID in ascending order of their height coordinates. j Select all of them. Then, the position estimation unit 105 calculates the selected centroid Y j From there, an approximate straight line is calculated as an approximate line for each main ID using the least squares method or the like. The position estimation unit 105 uses this approximate straight line to determine the ground height g i Position coordinate U i Calculate the position coordinate U i Outputs.
[0032] Figure 9 shows an example of approximate lines L1 and L2 calculated by the position estimation unit 105. In the example shown in Figure 9, the position estimation unit 105 determines the centroid Y to be assigned the main ID 1. jFor (marked with an X in the example shown in Figure 9), the centroid Y1, which is assigned the main ID 1, is selected, and the centroid Y4 included in slice S4, which is one level lower in the height direction than slice S5, which contains multiple centroids Y5, all of which are assigned the main ID 1. The position estimation unit 105 then calculates an approximate straight line L1 from the selected centroid Y1 to centroid Y4. On the other hand, the position estimation unit 105 selects the centroid Y, which is assigned the main ID 2. j For the points marked with a circle in the example shown in Figure 9, the selection is made from the centroid Y1, which is assigned the principal ID 2, to the centroid Y3 included in slice S3, which is one level lower in the height direction than slice S4, which contains multiple centroids Y4, all of which are assigned the principal ID 2. The position estimation unit 105 then calculates an approximate straight line L2 from the selected centroid Y1 to the centroid Y3.
[0033] Next, the operation of the position estimation device 10 will be explained.
[0034] Figure 10 is a flowchart showing the flow of the position estimation process by the position estimation device 10. The CPU 11 reads the position estimation program from the ROM 12 or storage 14, loads it into the RAM 13, and executes it to perform the position estimation process.
[0035] In step S101, the CPU 11 divides the street trees into a three-dimensional point cloud X and a threshold θ as the division unit 101. x It accepts and as input.
[0036] In step S102, the CPU 11 sets a starting point from the received three-dimensional point cloud X as the division unit 101.
[0037] In step S103, the CPU 11 divides the three-dimensional point cloud X into cluster D as the division unit 101. i Set i, which is the order in which the data is divided, to 1.
[0038] In step S104, the CPU 11 defines a division section 101 where the Euclidean distance from the set starting point is a threshold θ. x All points within are cluster D iSet it as.
[0039] In step S105, the CPU 11 uses the division unit 101 to select all the points within the threshold θ of the Euclidean distance from a certain point included in the set cluster D. i from a certain point included in the set cluster D, all points whose Euclidean distance is within the threshold θ x are included in the cluster D i and perform this process for all points included in the cluster D i
[0040] In step S106, the CPU 11 uses the division unit 101 to determine whether all points included in the received three - dimensional point cloud X are included in any cluster D. i In step S106, the CPU 11 uses the division unit 101 to determine whether all points included in the received three - dimensional point cloud X are included in any cluster D. If all points included in the received three - dimensional point cloud X are included in any cluster D i (step S106: YES), the process proceeds to step S109. On the other hand, if all points included in the received three - dimensional point cloud X are not included in any cluster D i (step S106: NO), the process proceeds to step S107.
[0041] In step S107, the CPU 11 uses the division unit 101 to set a starting point from the point cloud obtained by removing the cluster D from the three - dimensional point cloud X. i (step S107), the CPU 11 uses the division unit 101 to set a starting point from the point cloud obtained by removing the cluster D from the three - dimensional point cloud X.
[0042] In step S108, the CPU 11 uses the division unit 101 to increment i and return to step S104.
[0043] In step S109, the CPU 11 uses the slicing unit 102 to slice the three - dimensional point cloud included in one of the clusters D in the cluster set D into N slices and output the slice region S. i (step S109), the CPU 11 uses the slicing unit 102 to slice the three - dimensional point cloud included in one of the clusters D in the cluster set D into N slices and output the slice region S.
[0044] [[ID=4,2]]In step S110, the CPU 11 uses the main axis estimation unit 103 to set j, which is the order in which the slice S is sliced from the cluster D, to 1. i (step S110), the CPU 11 uses the main axis estimation unit 103 to set j, which is the order in which the slice S is sliced from the cluster D, to 1.
[0045] ` In step S111, the CPU 11 acquires the second cluster as the main trunk estimation unit 103. Specifically, as the main trunk estimation unit 103, the CPU 11 performs clustering on slice S j with a threshold θ s and acquires the second cluster in which the density of the included points is higher than the threshold θ d and the number of the included points is more than the threshold θ p .
[0046] In step S112, the CPU 11 calculates the centroid Y j of the second cluster divided from slice S j .
[0047] In step S113, the CPU 11 determines whether j is 1 as the main trunk estimation unit 103. If j is 1 (step S / 13: YES), the CPU 11 proceeds to step S114. On the other hand, if j is not 1 (step S113: NO), the CPU 11 proceeds to step S116.
[0048] In step S114, the CPU i1 assigns different main trunk IDs to the centroids Y1 as the main trunk estimation unit 103.
[0049] In step S115, the CPU 11 increments j as the main trunk estimation unit 103 and returns to step S111.
[0050] In step S116, the CPU 11 assigns main trunk IDs to the centroids Y k respectively. Specifically, if there is a centroid Y k within the range of the threshold θ t , the main trunk ID assigned to the centroid Y k-1 that exists and is closest in the range from the centroid Y k to the threshold θ t is assigned to the centroid Y k-1 from the centroid Y k to the threshold θ t within the range. If there is no centroid Y k-1 new main trunk IDs are assigned to the centroids Y respectivelyk To grant it.
[0051] In step S117, the CPU 11, acting as the main estimation unit 103, determines whether j is the number of slices N. If j is the number of slices N (step S117: YES), the CPU 11 proceeds to step S119. On the other hand, if j is not the number of slices N (step S117: NO), the CPU 11 proceeds to step S118.
[0052] In step S118, the CPU 11, acting as the main estimation unit 103, increments j and returns to step S111.
[0053] In step S119, the CPU 11, as the assignment unit 104, assigns cluster D i For each point included in the set, the centroid Y of the set of principal coordinates Y that is closest to that point. j Point cloud Z assigned the principal ID that was assigned to it. i Outputs.
[0054] In step S120, the CPU 11, as the position estimation unit 105, performs each S j From the coordinates in the height direction, in ascending order, from centroid Y1 to centroid Y w-1 Up to this point, the centroid Y has been assigned the same main ID. j Select this option.
[0055] In step S121, the CPU 11, as the position estimation unit 105, selects the centroid Y in step S120. j A close approximation line is calculated for each main ID.
[0056] In step S122, the CPU 11, acting as a position estimation unit 105, uses the calculated approximate straight line to determine the ground height g i Position coordinate U i Outputs.
[0057] In step S123, the CPU 11, as the position estimation unit 105, determines all clusters D included in the cluster set D. i Regarding the point cloud Z i and position coordinate Ui It determines whether or not the output was generated. CPU11 checks all clusters D included in cluster set D. i Regarding the point cloud Z i and position coordinate U i If the output is positive (step S123: YES), this position estimation process is terminated. Meanwhile, CPU 11 processes all clusters D included in cluster set D. i Regarding the point cloud Z i and position coordinate U i If no output is generated (step S123: NO), return to step S109.
[0058] As described above, the position estimation device according to this embodiment divides the three-dimensional point cloud of street trees, measured by a measuring device that measures the three-dimensional position of each point in three-dimensional space, into a plurality of first clusters. The position estimation device then divides the first clusters into a plurality of regions in the horizontal direction. The position estimation device then propagates and assigns identification information to representative points of second clusters divided from regions that are within a first threshold range from the said representative point and whose coordinates in the height direction are higher than the said region. The position estimation device then selects representative points to which the same identification information has been assigned and estimates the position of the street trees based on an approximation line calculated from the selected representative points. This makes it possible to estimate the position of street trees even if a portion of the three-dimensional point cloud of street trees is missing.
[0059] <Variation> This disclosure is not limited to the embodiments described above, and various modifications and applications are possible without departing from the gist of this disclosure.
[0060] For example, in the above embodiment, the cutting section 102 is slice S j Cluster D such that the number of points included in each cluster is the same. i It was cut horizontally into N slices. However, this is not the only example. Slice S j The number of points included in each does not have to be the same. For example, the cutting section 102 is slice S jCluster D i It may also be cut horizontally into N slices.
[0061] Furthermore, in the above embodiment, the centroid of the second cluster was applied as the representative point of the second cluster. However, this is not the only example. For example, the center point of a circle detection using the Hough transform or the like may be applied as the representative point of the second cluster.
[0062] Furthermore, in the above embodiment, the position estimation unit 105 selects the centroid Y j An approximate straight line was applied as the approximate line calculated from. However, this is not the only example. The position estimation unit 105 is the centroid Y j The approximation line calculated from this data may be an approximation curve.
[0063] Furthermore, in the above embodiment, the position estimation device 10 included an assignment unit 104 and a position estimation unit 105. However, it is not limited to this example. The position estimation device 10 may not include an assignment unit 104, and the function of the assignment unit 104 may be implemented by a device independent of the position estimation device 10. Alternatively, the point cloud Z may be generated by a device that does not include a position estimation unit 105, but includes a division unit 101, a segmentation unit 102, a main estimation unit 103, and an assignment unit 104. i You may output this.
[0064] Furthermore, the various processes that the CPU reads and executes in each of the above embodiments may be executed by various processors other than the CPU. Examples of such processors include PLDs (Programmable Logic Devices) such as FPGAs (Field-Programmable Gate Arrays) whose circuit configuration can be changed after manufacturing, and dedicated electrical circuits that are processors with circuit configurations specifically designed to execute specific processes, such as ASICs (Application Specific Integrated Circuits). The position estimation process may be executed by one of these various processors, or by a combination of two or more processors of the same or different types (for example, multiple FPGAs, and a combination of a CPU and an FPGA). More specifically, the hardware structure of these various processors is an electrical circuit that combines circuit elements such as semiconductor elements.
[0065] Furthermore, although the above embodiments describe a configuration in which the position estimation program is pre-stored (installed) in the storage 14, the system is not limited to this. The program may be provided in a form stored on a non-transitory storage medium such as a CD-ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), or USB (Universal Serial Bus) memory. Alternatively, the program may be provided in a form that can be downloaded from an external device via a network.
[0066] The following additional information is disclosed regarding the embodiments described above.
[0067] (Additional note 1) A position estimation device, Memory and At least one processor connected to the memory, Includes, The aforementioned processor, A measuring device that measures the three-dimensional position of each point in three-dimensional space measures the three-dimensional point cloud of street trees, which is then divided into multiple first clusters. The first cluster is divided into multiple regions in the horizontal direction. Identification information identifying a representative point of a second cluster separated from the aforementioned region is propagated and assigned to the representative point of the second cluster separated from the aforementioned region that is located within a first threshold range from the said representative point and whose coordinates in the height direction are higher than those of the aforementioned region. Select the representative points to which the same identification information has been assigned, and estimate the position of the street trees based on the approximation line calculated from the selected representative points. A position estimation device configured as follows.
[0068] (Additional note 2) A non-temporary storage medium that stores a program executable by a computer to perform position estimation processing, The aforementioned position estimation process is, A measuring device that measures the three-dimensional position of each point in three-dimensional space measures the three-dimensional point cloud of street trees, which is then divided into multiple first clusters. The first cluster is divided into multiple regions in the horizontal direction. Identification information identifying a representative point of a second cluster separated from the aforementioned region is propagated and assigned to the representative point of the second cluster separated from the aforementioned region that is located within a first threshold range from the said representative point and whose coordinates in the height direction are higher than those of the aforementioned region. Select the representative points to which the same identification information has been assigned, and estimate the position of the street trees based on the approximation line calculated from the selected representative points. Non-transitory storage medium. [Explanation of symbols]
[0069] 10 Position estimation device 11 CPU 12 ROM 13 RAM 14 Storage 17 Communication I / F 19 bus 101 Split section 102 Cutting section 103 Chief Estimation Department 104 Assignment section 105 Position estimation part 106 Estimation part θ s threshold θ x threshold θ d threshold θ p threshold θ t threshold D i cluster L1 approximate straight line L2 approximation straight line N slice count S j slice U i location coordinates X 3D point cloud Y j center of gravity Z i point cloud
Claims
1. A measuring device that measures the three-dimensional position of each point in three-dimensional space divides the three-dimensional point cloud of street trees into multiple first clusters. A partitioning unit that divides the first cluster into multiple regions in the horizontal direction, A main estimation unit that propagates and assigns identification information to a representative point of a second cluster divided from the aforementioned region to the representative point of the second cluster divided from the aforementioned region, which is located within a first threshold range from the said representative point and whose coordinates in the height direction are higher than those of the aforementioned region. A position estimation unit that selects representative points to which the same identification information has been assigned, and estimates the position of the street trees based on an approximation line calculated from the selected representative points, A position estimation device equipped with the following features.
2. The position estimation device according to claim 1, wherein the main estimation unit assigns the identification information to the representative points of the second cluster divided from the first region having the smallest coordinate among the plurality of regions, and assigns the identification information assigned to the nearest representative point of the second cluster divided from the region other than the first region, which lies within the range of the first threshold from the representative point and whose coordinate is one level lower than the region.
3. The position estimation device according to claim 2, wherein if the principal estimation unit does not have a representative point of a second cluster divided from a region whose coordinates are one level lower than the region containing the second cluster, within the range of the first threshold from the representative point of the second cluster divided from a region other than the first region, the principal estimation unit assigns new identification information to the representative point of the second cluster divided from a region other than the first region.
4. The position estimation device according to claim 1, wherein the position estimation unit selects representative points assigned the same identification information from each region in ascending order of coordinates, and terminates the selection if the representative points assigned the same identification information are included in the same region.
5. The position estimation device according to claim 1, wherein the second cluster is a cluster in which the density of points it contains is higher than a second threshold and the number of points it contains is greater than a third threshold.
6. The position estimation device according to claim 1, further comprising a assigning unit that assigns to each point included in the first cluster the same identification information as that assigned to the representative point closest to each point.
7. The division unit divides the three-dimensional point cloud of street trees, measured by a measuring device that measures the three-dimensional position of each point in three-dimensional space, into multiple first clusters. The cutting unit divides the first cluster into multiple regions in the horizontal direction. The main estimation unit propagates and assigns identification information to the representative point of the second cluster divided from the region, which is located within a first threshold range from the said representative point and whose coordinates in the height direction are higher than those of the said region. The position estimation unit selects representative points to which the same identification information has been assigned, and estimates the position of the street trees based on the approximation line calculated from the selected representative points. Location estimation method.
8. A position estimation program for causing a computer to function as a component of the position estimation device described in claim 1.
Citation Information
Patent Citations
Single plant vegetation extraction method based on transfer learning and Gaussian mixture model separation
CN112347894A
Crop plant number and stem width automatic extraction method based on 3D point cloud
CN113780144A
Clustering apparatus, artifact identification apparatus, trunk detection apparatus, method, and program
JP2018097424A