Point cloud data matching method, matching device and computer readable medium

By generating and extracting input model groups, and combining cost calculation and position and pose changes, the problem of excessive computational load in point cloud data matching is solved, and high-speed and high-precision matching processing is achieved.

CN115880453BActive Publication Date: 2026-06-05TOYOTA JIDOSHA KK

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2022-09-21
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies struggle to achieve high-speed and high-precision processing in point cloud data matching, especially when using ICP and NDT methods, which suffer from excessive computational load.

Method used

By generating an input model that reduces the amount of point cloud data, an input model group is generated, and a portion of the input models are extracted using the extraction unit. Combined with cost calculation and position and pose changes, efficient matching processing is achieved.

Benefits of technology

It achieves high-speed and high-precision point cloud data matching, reduces computational load, and improves the efficiency and accuracy of matching processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115880453B_ABST
    Figure CN115880453B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a matching method of point cloud data, a matching device, and a computer readable medium. The matching device according to the present embodiment includes a generation unit that generates input models in which the amount of data of point cloud data is reduced, and generates an input model group including a plurality of the input models; an extraction unit that extracts a part of the input models from the input model group based on shape information of the input models; a calculation unit that compares the extracted input models with reference models based on reference point cloud data, and calculates a cost; a determination unit that determines whether the cost converges; and a change unit that changes the position and posture in a direction in which the cost becomes smaller in a case where the cost does not converge.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to a matching method, a matching device, and a computer-readable medium for point cloud (point cluster) data. Background Technology

[0002] As a method for aligning point cloud data, ICP (Iterative Closest Point) is utilized. ICP calculates the relative position and pose by adjusting the input point cloud and its position and pose to make the input point cloud consistent with a reference point cloud. For example, ICP is used for estimating the self-position of a car. Point cloud data obtained from LiDAR (Light Detection and Ranging) or Laser Imaging Detection and Ranging) installed on the car becomes the input point cloud. Additionally, a street map represented by the point cloud is provided as reference point cloud data.

[0003] Japanese Patent Application Publication No. 2019-101885 discloses a technique for estimating self-position using NDT (Normal Distribution Transform). The modeling apparatus in Japanese Patent Application Publication No. 2019-101885 applies voxel segmentation to point cloud data and models each voxel. Furthermore, it uses the resulting map point cloud and sensor point cloud to estimate its self-position. Additionally, the data distribution of the voxel point cloud is represented by an ellipsoid. Figure 1 Furthermore, the point cloud within the sub-voxels obtained by subdividing the voxels is represented by the model. Summary of the Invention

[0004] Given this matching of point cloud data, faster and more accurate processing is desired.

[0005] This disclosure is made to solve this problem, and provides a matching device, matching method and program that can perform matching processing at high speed and with high accuracy.

[0006] The point cloud data matching device in this embodiment includes: a generation unit that generates an input model with reduced point cloud data volume and generates an input model group containing multiple input models; an extraction unit that extracts a portion of the input models from the input model group based on the shape information of the input models; a calculation unit that compares the extracted models with a reference model based on reference point cloud data and calculates the cost; a determination unit that determines whether the cost converges; and a change unit that, if the cost does not converge, changes the position and pose in a direction that reduces the cost.

[0007] In the matching device described above, the extraction unit may also determine the extraction model based on the orientation of the input model.

[0008] In the matching device described above, the extraction unit may also determine the extraction model based on the distance between the input models.

[0009] In the matching device described above, the input model can also be an elliptic model, where the points contained in the voxel are treated as a whole to generate the elliptic model.

[0010] In the matching device described above, the input model can also be a planar model, where multiple adjacent points are treated as a whole to generate the planar model.

[0011] The point cloud data matching method in this embodiment includes the following steps: generating an input model with reduced point cloud data volume and generating an input model group containing multiple input models; extracting a portion of the input models from the input model group based on the shape information of the input models contained in the input model group; calculating the cost by comparing the extracted model with a reference model based on reference point cloud data; determining whether the cost converges; and, if the cost does not converge, changing the position and pose in the direction of reducing the cost.

[0012] In the above matching method, the extraction model can also be determined based on the direction of the input model.

[0013] In the matching method described above, the extracted model can also be determined based on the distance between the input models.

[0014] In the above matching method, the input model can also be an elliptic model, where the points contained in the voxel are treated as a whole to generate the elliptic model.

[0015] In the above matching method, the input model can also be a planar model, where multiple adjacent points are treated as a whole to generate the planar model.

[0016] The point cloud data program in this embodiment is a program that enables a computer to execute a point cloud data matching method. The matching method includes: generating an input model with reduced point cloud data volume and generating an input model group containing multiple input models; extracting a portion of the input models from the input model group based on the shape information of the input models contained in the input model group; calculating the cost by comparing the extracted model with a reference model based on reference point cloud data; determining whether the cost converges; and, if the cost does not converge, changing the position and pose in the direction that reduces the cost.

[0017] In the above procedure, the extraction model can also be determined based on the orientation of the input model.

[0018] In the above procedure, the extraction model can also be determined based on the distance between the input models.

[0019] In the above procedure, the input model can also be an elliptic model, where the points contained in the voxel are treated as a whole to generate the elliptic model.

[0020] In the above procedure, the input model can also be a planar model, where multiple adjacent points are treated as a whole to generate the planar model.

[0021] According to this disclosure, a matching apparatus, matching method, and program are available that can perform matching processing at high speed and with high precision.

[0022] The above and other objects, features and advantages of this disclosure will be more fully understood from the detailed description and accompanying drawings given below, which are given by way of example only and should not be construed as limiting the disclosure. Attached Figure Description

[0023] Figure 1 This is a block diagram schematically representing a point cloud data matching device.

[0024] Figure 2 It is a schematic diagram representing the input model group M and the reference model group R in a plan view.

[0025] Figure 3 This is a schematic diagram representing the extracted model group N and the reference model group R in a planar diagram.

[0026] Figure 4 This is a schematic diagram representing the extraction of the elliptic and the reference elliptic when cost convergence is shown in a planar diagram.

[0027] Figure 5 This is a schematic diagram illustrating the processing when extracting ellipsoids that are close in distance and direction.

[0028] Figure 6 This is a schematic diagram representing the input model group M and the reference model group R in a plan view.

[0029] Figure 7 This diagram illustrates the processing when a long, thin rod-shaped input elliptic is extracted.

[0030] Figure 8 This diagram illustrates the processing when an input ellipsoid that is approximately spherical is extracted.

[0031] Figure 9 This is a flowchart illustrating the point cloud data matching method involved in this embodiment. Detailed Implementation

[0032] The present invention will now be described through embodiments thereof, but the invention as described in the claims is not intended to be limited to these embodiments. Furthermore, not all configurations described in the embodiments are necessary means to solve the problem.

[0033] (System Composition)

[0034] Figure 1 This is a block diagram illustrating the configuration of the matching device 100 and its system 1 according to the embodiment. The system 1 includes a sensor 2 and a matching device 100. The matching device 100 includes a generation unit 110, an extraction unit 120, a cost calculation unit 130, a position and posture change unit 140, and a convergence determination unit 150.

[0035] Sensor 2 is, for example, a ranging sensor of a LiDAR (Light Detection and Ranging) system. Sensor 2 measures the distance to surrounding objects and people (hereinafter collectively referred to as surrounding objects). Specifically, sensor 2 has a laser source that generates laser light and a photodetector that detects laser light reflected from surrounding objects. Sensor 2 determines the distance to surrounding objects based on the round-trip time of the laser light being reflected by the surrounding objects and returning to sensor 2.

[0036] Furthermore, sensor 2 possesses a scanning optical system for scanning lasers or a mechanism for rotating the optical module. Sensor 2 acquires point cloud data by changing the direction of the laser emission. Each point in the point cloud data represents the distance from sensor 2 to surrounding objects. That is, sensor 2 measures the distance to surrounding objects in each direction, thereby measuring the point cloud data. Sensor 2 outputs the point cloud data to the matching device 100. Each point in the point cloud data has three-dimensional coordinate information. That is, the coordinates of each point are represented by a three-dimensional orthogonal coordinate system or a polar coordinate system. Moreover, sensor 2 is not limited to lidar; any sensor capable of acquiring point cloud data is acceptable.

[0037] The matching device 100 acquires point cloud data obtained by the sensor 2 and records it in a memory, etc. The point cloud data input to the matching device 100 is also referred to as the input point cloud. The matching device 100 uses algorithms such as GICP (Generalized Iterative Closest Point) and NDT (Normal Distribution Transform) to determine the position and pose of the input model and the reference model. The input model is an abstract model of the input point cloud, and the reference model is an abstract model of the reference point cloud. The following description will illustrate an example using NDT, which abstracts point cloud data from an elliptic model.

[0038] The generation unit 110 generates an input model that reduces the amount of data in the input point cloud data, and generates an input model group containing multiple input models. By using input models representing the point cloud, the amount of data processing can be reduced. This enables high-speed processing. Here, the input model is called an elliptic model. The input model group contains two or more elliptic models (hereinafter also referred to as input elliptic). The generation unit 110 generates the input elliptic by modeling multiple points. The generation unit 110 generates the input elliptic by abstracting the input point cloud.

[0039] For example, the generation unit 110 divides the sensing space into multiple voxels. For example, the generation unit 110 divides the space into 1-meter cubic 3D spaces as a single voxel. The generation unit 110 treats the input point cloud contained in a voxel as a whole (a set of points) and generates an elliptic model. The generation unit 110 approximates the input elliptic with the input point clouds contained in each voxel. The input elliptic is the input model representing the input point cloud contained in a voxel. The input point cloud contained in a voxel is represented by an input elliptic.

[0040] The generation unit 110 performs principal component analysis on the input point cloud, which is treated as a whole, to ellipsoidize the point cloud. Using principal component analysis, the generation unit 110 generates an input ellipsoid formed by three principal axes. For example, the axes of the first to third principal components correspond to the axes of the ellipsoid. Furthermore, the first principal component with the largest deviation (fluctuation) corresponds to the major axis of the input ellipsoid. The generation unit 110 generates the input ellipsoid per voxel. That is, one input ellipsoid is generated based on one voxel. Multiple input ellipsoids generated by the generation unit 110 constitute an input model group.

[0041] The input elliptic becomes a elliptic of revolution obtained by rotating the ellipse around its axes. The elliptic can be either a elliptic of revolution formed by rotating the ellipse around its major axis or around its minor axis. Thus, the input point cloud is represented by the input elliptic. That is to say, the shape information representing the shape of the input elliptic changes according to the three-dimensional coordinates of the input point cloud.

[0042] The extraction unit 120 extracts a portion of the input models from the input model group. That is, the extraction unit 120 extracts a portion of the input ellipsoids by thinning out the input ellipsoids contained in the input model group (removing redundant parts at certain intervals). The input ellipsoids extracted by the extraction unit 120 are used as the extracted ellipsoids (or also referred to as the extracted models).

[0043] Figure 2 This is a schematic diagram representing the input model group M and the reference model group R. In Figure 2 In the diagram, the input elliptic group M is represented, which is then used as the input model group M. Specifically, the input model group M has seven input elliptic groups M1 to M7. Additionally, the reference model group R has elliptic groups R1 to R11. Here, the input elliptic groups M1 to M7 and the reference elliptic groups R1 to R11 are shown in a planar diagram. That is, the input elliptic groups M1 to M7 and the reference elliptic groups R1 to R11 are represented as ellipses.

[0044] The reference model group is generated based on reference point cloud data such as map information. That is, by segmenting the reference point cloud data into voxels and performing principal component analysis on the reference point cloud contained in each voxel, the reference model group is obtained. For example, the reference point cloud data and / or the reference model group are pre-stored in memory, etc.

[0045] Figure 3 This is a schematic diagram showing the extracted model extracted by the extraction unit 120 in a plan view. Here, the extraction unit 120 extracts from... Figure 2 From the seven input ellipsoids M1 to M7 shown, three input ellipsoids, M1, M3, and M6, were extracted as the extraction model (in... Figure 3 The extracted ellipsoids are represented as N1, N3, and N6. That is, the extraction unit 120 removes the input ellipsoids M2, M4, M5, and M7. Furthermore, the model group consisting of the extracted ellipsoids N1, N3, and N6 is designated as the extracted model group N.

[0046] The cost calculation unit 130 compares the extracted model group N with the reference model group R and calculates the cost. For example, for each of the extracted ellipsoids N1, N3, and N6, the cost calculation unit 130 searches for the nearest reference ellipsoid (hereinafter also referred to as the object reference ellipsoid). The object reference ellipsoid is the reference ellipsoid in the reference model group that is closest to the extracted ellipsoid. Therefore, for each extracted ellipsoid, an object reference ellipsoid is determined. For example, in Figure 4 In the process, the nearest neighboring reference ellipsoid R2 of the extracted ellipsoid N1 becomes the object reference ellipsoid for the extracted ellipsoid N1.

[0047] The cost calculation unit 130 calculates the distance between the extracted ellipse and the object reference ellipse as the cost. That is, the cost calculation unit 130 compares the extracted ellipse and the object reference ellipse and calculates the cost corresponding to the distance between the two ellipses. The distance between the two ellipses is not only a straight-line distance but also takes into account the shape of the ellipse. For example, the cost calculation unit 130 can calculate the distance between the ellipses from the feature vector representing the ellipse's characteristics. The cost between the extracted ellipse and the object reference ellipse facing different directions increases. On the other hand, the cost between the extracted ellipse and the object reference ellipse facing the same direction decreases. The cost calculation unit 130 calculates the distance between the ellipses for each extracted ellipse and adds the sums as the cost.

[0048] exist Figure 3 In the example shown, for each of the extracted ellipsoids N1, N3, and N6, the cost calculation unit 130 calculates the distance to the nearest object reference ellipsoid. Thus, three distances are calculated. The cost calculation unit 130 calculates the cost between the extracted model group N and the reference model group R by adding the three distances. Furthermore, the cost calculation unit 130 can also calculate the cost based on Euclidean distance, norm, etc., between ellipsoids. Additionally, the cost calculation unit 130 can also calculate the cost based on the distance between feature vectors representing the features of the ellipsoids.

[0049] The position and pose change unit 140 changes the relative position and pose of the reference model group R and the extracted model group N. For example, in the case represented by a three-dimensional orthogonal coordinate system, the position and pose change unit 140 changes the translational position and rotational position (pose) of the extracted model group N in the three axial directions. Alternatively, the position and pose change unit 140 may also change the translational position and rotational position (pose) of the reference model group R in the three axial directions.

[0050] Whenever the position and posture change unit 140 changes the position and posture, the cost calculation unit 130 calculates the cost. That is, the cost calculation unit 130 calculates the cost on a per-iteration basis. The cost calculation unit 130 calculates the cost before and after the position and posture change. The position and posture change unit 140 changes the position and posture in a direction that reduces cost. For example, the position and posture change unit 140 uses optimization methods such as gradient methods to change the estimated position and posture value in a direction that reduces cost. The matching device 100 repeatedly performs cost calculations based on the cost calculation unit 130 and position and posture changes based on the position and posture change unit 140.

[0051] The convergence determination unit 150 determines whether the cost has converged. That is, the matching device 100 repeatedly performs cost calculations and position / pose changes until the cost converges. For example, the convergence determination unit 150 compares the costs before and after the position / pose change and performs a convergence determination. The convergence determination unit 150 performs iterative calculations until the cost difference falls below a predetermined threshold. Alternatively, the convergence determination unit 150 repeatedly performs position / pose changes and cost calculations until a predetermined number of iterations is reached.

[0052] The matching device 100 performs iterative calculations to match the reference model group R with the extracted model group N. The matching device 100 uses the position and pose matched between the reference model group R and the extracted model group N as the matching position and pose between the input point cloud (input model group M) and the reference point cloud (reference model group R).

[0053] Figure 4 This is a schematic diagram representing the reference model group R and the extracted model group N during cost convergence in a planar graph. Through iterative cost calculation and position / pose changes, the cost of the extracted model group N and the reference model group R is minimized. The position / pose where the cost becomes minimum (minimum) is called the matched position / pose. Specifically, the position / pose of the extracted elliptic N1 is approximately the same as the position / pose of the object reference elliptic R2. The position / pose of the extracted elliptic N3 is approximately the same as the position / pose of the object reference elliptic R4, and the position / pose of the extracted elliptic N6 is approximately the same as the position / pose of the object reference elliptic R7.

[0054] Thus, cost calculation is performed on a per-iteration basis. Furthermore, the cost calculation unit 130 calculates the cost by calculating the distance for each elliptic. Therefore, by extracting a portion of the input elliptic from the input model group M as extracted elliptic by the extraction unit 120, the computational load can be reduced. That is, since the number of models can be reduced, the computational load can be reduced. High-precision matching of point cloud data is possible. Matching processing can be performed with high speed and high precision.

[0055] Furthermore, the extraction unit 120 extracts the input elliptic based on shape information, such as the shape of the input elliptic. Moreover, shape information refers to information representing the shape, position, orientation (axial direction), etc., of the input model, becoming inherent information for each input elliptic. For example, feature quantities obtained from a whole point cloud can also be considered shape information.

[0056] For example, the extraction unit 120 selects ellipsoids to be extracted based on the orientation and position indicated by the shape information of the input ellipsoid. For instance, the extraction unit 120 extracts ellipsoids in a way that makes adjacent input ellipsoids less dense. The extraction unit 120 also extracts ellipsoids in a way that makes input ellipsoids with similar orientations less dense. This allows for more appropriate cost calculations. Regarding this, using... Figure 5 Please provide an explanation.

[0057] Figure 5 This is a schematic diagram illustrating an example of extracting input elliptic bodies located adjacent to each other and facing the same direction in a plan view. Specifically, the extraction unit 120 extracts... Figure 2 The input elliptic bodies M1, M2, and M3 shown are used as the extraction elliptic bodies N1, N2, and N3. That is to say, the extraction unit 120 discards... Figure 2 The input ellipsoids are M4 to M7. Ellipses N1, N2, and N3 are extracted and arranged with approximately the same orientation and adjacent to each other.

[0058] In this situation, the matching device 100 has difficulty determining the appropriate matching position between the extracted model group N and the reference model group R. For example, in Figure 5 In this context, reference ellipsoids R1, R2, and R3 are considered as the object reference ellipsoids located closest to the extracted ellipsoids N1, N2, and N3, respectively. That is to say, in... Figure 5 The cost is minimized when the position pose shown is not the matching position pose. Since the matching device 100 cannot obtain a suitable matching position pose, the matching position pose of the point cloud data is calculated with deviation.

[0059] Therefore, as Figure 4 As shown, the extraction unit 120 preferably extracts input elliptic bodies with different orientations. That is, the extraction unit 120 rejects input elliptic bodies with orientations close to the selected extraction elliptic body. The orientation of the input elliptic body can be determined based on the isometric direction of the first principal component. Furthermore, the extraction unit 120 extracts input elliptic bodies that are geographically separated. That is, the extraction unit 120 rejects input elliptic bodies that are adjacent to the selected extraction elliptic body. The extraction unit 120 rejects input elliptic bodies that are close in distance. For example, the distance between input elliptic bodies can be set as the Euclidean distance between the centroid position and the center position of the input elliptic body. In this way, extraction elliptic bodies suitable for matching can be extracted. As a result, high matching accuracy can be obtained with high-speed processing.

[0060] Furthermore, the extraction unit 120 may also select an elongated rod-shaped input elliptic and / or a flat, disk-like input elliptic as the extraction elliptic. On the other hand, since a near-spherical input elliptic does not possess orientation information, it is of low value. Therefore, the extraction unit 120 excludes near-spherical input elliptic.

[0061] The extraction unit 120 selects the input elliptic with higher value as the extraction elliptic based on the shape information of each input elliptic. In input elliptices that are nearly spherical, the cost change is smaller even when the orientation of the input elliptic changes. Therefore, even when the position and pose change unit 140 changes the relative orientation of the reference model group R and the extraction model group N, the cost change is small. Thus, cost calculation is more likely to converge under incorrect position and pose conditions.

[0062] Therefore, in this embodiment, by excluding input ellipsoids that are nearly spherical through the extraction unit 120, the convergence determination unit 150 can perform a convergence determination appropriately. Thus, the extraction unit 120 can extract the input ellipsoid based on shape information representing its shape. The matching device 100 can calculate an appropriate matching position pose. Shape information is a feature quantity representing the characteristics of a set of points.

[0063] Figure 6 This is a schematic planar diagram representing a reference model group R and an input model group M. The reference model group R has reference ellipsoids R1 and R2. The input model group M has input ellipsoids M1 and M2. Here, reference ellipsoid R2 is closer to a sphere than reference ellipsoid R1. Input ellipsoid M2 is closer to a sphere than input ellipsoid M1.

[0064] Figure 7 This is a schematic diagram illustrating the matching position and pose when the input elliptic is M1 is extracted as the extracted elliptic N1. That is to say, in... Figure 7 In the process, the extraction unit 120 removes the near-spherical input elliptic body M2. With the slender extraction elliptic body N1 extracted, the input model group M and the reference model group R are appropriately matched. That is, under the matched positional pose, the deviation between the positional pose of the input elliptic bodies M1 and M2 and the reference elliptic bodies R1 and R2 becomes smaller.

[0065] Figure 8 This is a schematic diagram illustrating the matching position and pose when the input elliptic M2 is extracted as the extracted elliptic N2. That is to say, in... Figure 8 In the middle, the extraction unit 120 removed the slender rod-shaped input elliptic body M1. After extracting the nearly spherical (in...) Figure 8In the case of extracting an elliptic N2 (which is represented as a circle in a planar diagram), it is very likely that an appropriate matching position pose cannot be calculated.

[0066] exist Figure 8 In the case where the orientation difference between the input model group M and the reference model group R is large, the cost calculation converges. That is to say, in... Figure 8 In the process, the position and pose of the extracted elliptic N2 are roughly the same as those of the reference elliptic R2, but the position and pose of the rejected input elliptic M1 deviate significantly from those of the reference elliptic R1. Therefore, the matching device 100 cannot calculate a suitable matching position and pose.

[0067] Thus, the extraction unit 120 selects the extraction model to be extracted based on shape, position, orientation, etc. This allows for the appropriate calculation of the matching position pose. Furthermore, since the number of extraction models can be further reduced, the computational load can be further alleviated.

[0068] The following uses Figure 9 The point cloud data matching method (registration method) involved in this embodiment will be described. Figure 9 This is a flowchart representing the matching method.

[0069] First, the generation unit 110 generates an input model group from the point cloud data (S101). That is, the measurement space is divided into multiple voxels, and an input model is generated from the point cloud data contained in the voxels. The input model can be, for example, an elliptic model. The generation unit 110 generates the input model group by calculating the input elliptic for each voxel.

[0070] Next, the extraction unit 120 extracts a portion of the input models contained in the input model group (S102). For example, the extraction unit 120 extracts the input models based on the shape information inherent to each input model. That is, the extraction unit 120 extracts the input models based on the shape, position, orientation, intrinsic values ​​(eigenvalues), normal vectors, etc. of the input models. The input models extracted by the extraction unit 120 are called the extracted models.

[0071] The cost calculation unit 130 compares the extracted models with the reference models and calculates the cost of the extracted model group (S103). Here, the cost calculation unit 130 searches for the nearest reference model for each extracted model and calculates the distance between the models. This distance becomes the cost that varies depending on the orientation and / or shape of the model. Furthermore, by accumulating the cost of each extracted model, the cost between the reference model group and the extracted model group is calculated.

[0072] The convergence determination unit 150 determines whether the cost calculation iteration has converged (S104). If it has not converged (S104: No), the position and pose change unit 140 changes the position and pose of the extracted model group (S105). Furthermore, with the changed position and pose, the cost calculation unit 130 recalculates the cost.

[0073] If convergence is achieved (S104: Yes), the matching process ends. For example, if the number of iterations reaches a predetermined value, the convergence determination unit 150 determines that convergence has occurred. Alternatively, if the cost change converges, the convergence determination unit 150 determines that convergence has occurred. In this way, the appropriate matching position and pose can be obtained with high-speed processing.

[0074] Furthermore, in the above embodiments, an example of generating an elliptic model as the input model and reference model was described; however, the input model and reference model are not limited to an elliptic model. The input model can be any model capable of compressing the data volume from point cloud data. For example, the input model and reference model can also be other models such as planar models. The reference model and the input model are identical models.

[0075] In the case of GICP (Generalized Iterative Closest Point Method), the generation unit 110 treats multiple adjacent points as a whole and generates a planar model. The generation unit 110 performs principal component analysis on a predetermined number of point cloud data points. For example, the generation unit 110 calculates eigenvalues ​​by solving the eigenvalue problem of the variance-covariance matrix or the correlation matrix. The generation unit 110 generates a plane with the principal axis having the smallest eigenvalue as its normal. The plane with the smallest sum of squared distances from all points becomes the planar model. That is, the plane with the direction of smallest deviation (the third principal component vector) as its normal direction becomes the input model. The planar model becomes a plane passing through the centroid of the point set. The planar model becomes a plane containing the first and second principal component axes. Here, the generation unit 110 treats 20 adjacent points as a whole (a point set) and generates a planar model from the 20 point sets.

[0076] When a planar model is used as the input model, the extraction unit 120 only needs to discard planar models that are not planar. That is, if the intrinsic value corresponding to the principal axis representing the normal is above a certain value, then it is not planar, and therefore the extraction unit 120 discards the planar model. On the other hand, if the intrinsic value corresponding to the principal axis representing the normal is less than a certain value, then it is planar, and therefore the extraction unit 120 extracts the planar model. The generation unit 110 can include the intrinsic value in the shape information. Alternatively, the extraction unit 120 can extract the planar model based on the sum of the squared distances from the point cloud to the plane. The extraction unit 120 can extract the planar model based on the shape information of the planar model. The shape information of the planar model can be obtained from the feature quantities representing the set of points. In other words, the extraction unit 120 can perform extraction based on the feature quantities obtained from the set of points.

[0077] Of course, the extraction unit 120 can perform extraction based on the shape information inherent to each planar model. In this case, the shape information may also include information representing the centroid position of the point cloud as a whole. Moreover, the extraction unit 120 discards planar models with close centroid positions. Alternatively, the shape information may also include information representing the normal direction of the planar model. The extraction unit 120 may also discard planar models with normal directions that are nearly parallel.

[0078] The matching method described above can be implemented by a computer program and / or hardware. The matching device 100 includes a memory for storing programs and a processor for executing programs. By executing the program through the matching device 100, the matching method according to this embodiment can be performed.

[0079] Some or all of the above-described processes can also be executed by a computer program. That is, the control of the matching device 100 is performed by the control computer constituting the matching device 100 executing the program. The program includes a set of commands (or software code) for causing the computer to perform one or more functions described in the embodiments when read by the computer. The program can also be stored on a non-transitory computer-readable medium or a physical storage medium. As a non-limiting example, the computer-readable medium or physical storage medium includes random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray disc or other optical disc storage, cassette tape, magnetic tape, disk storage or other magnetic storage devices. The program can also be transmitted on a transient computer-readable medium or communication medium. As a non-limiting example, the transient computer-readable medium or communication medium includes electrical, optical, acoustic or other forms of propagation signals.

[0080] The invention made by the inventor has been specifically described above based on the embodiments. However, it should be noted that the invention is not limited to the above embodiments, and various modifications can be made without departing from its spirit.

[0081] Based on this disclosure as described herein, it will be apparent that embodiments of this disclosure can be modified in many ways. Such modifications should not be considered a departure from the spirit and scope of this disclosure, and all such changes that will be apparent to those skilled in the art are intended to be included within the scope of the appended claims.

Claims

1. A point cloud data matching device, comprising: The generation unit generates an input elliptic model with reduced data volume of point cloud data, and generates an input elliptic model group containing multiple input elliptic models, wherein the point cloud data is data of the input point cloud obtained by a sensor that measures the distance to surrounding objects. The extraction unit extracts a portion of the input elliptic models from the input elliptic model group as extracted elliptic models based on the shape information of the input elliptic models, and takes a model group containing multiple extracted elliptic models as an extracted elliptic model group. The computing unit compares the extracted elliptic model with a reference elliptic model based on the reference point cloud data, and calculates the computational cost. The determination unit determines whether the cost converges. as well as The variable component, when the cost does not converge, causes the position and orientation to change in the direction that reduces the cost. The generating unit, The sensing space is divided into multiple voxels. Principal component analysis is performed on the set of points that are considered as a whole within a voxel to generate an input elliptic model formed by three principal axes. By generating an input elliptic model for each voxel, a group of input elliptic models containing multiple input elliptic models is generated. The shape information refers to the shape, position, and orientation of the input elliptic model. The extraction unit extracts the extracted elliptic model by removing input elliptic models that are close in position or orientation from the input elliptic models included in the input elliptic model group. Multiple reference elliptic models are contained in a reference elliptic model group. The reference elliptic model is generated by segmenting the reference point cloud data of the map information into voxels and performing principal component analysis on points contained in a voxel in the reference point cloud data. The reference elliptic model group is generated by performing the principal component analysis on each voxel. The computing unit, Search among the multiple reference ellipsoid models included in the group of reference ellipsoid models for the reference ellipsoid model that is closest to the extracted ellipsoid model. The searched reference elliptic model is identified as the object reference elliptic model. The cost is calculated based on the distance between the object reference elliptic model and the extracted elliptic model. The change unit alters the position and orientation of the extracted elliptic model group relative to the reference elliptic model group by changing the relative translational and rotational positions of the reference elliptic model group and the extracted elliptic model group in the three-dimensional coordinate system.

2. The point cloud data matching device according to claim 1, The extraction unit extracts the extracted elliptic model by removing the input elliptic model, which is close to a sphere.

3. A point cloud data matching device, comprising: The generation unit generates an input plane model that reduces the amount of point cloud data, and generates an input plane model group containing multiple input plane models, wherein the point cloud data is the input point cloud data obtained by a sensor that measures the distance to surrounding objects. The extraction unit extracts a portion of the input plane models from the input plane model group as extraction plane models based on the shape information of the input plane models, and takes a model group containing multiple extraction plane models as an extraction plane model group. The computing unit compares the extracted plane model with a reference plane model based on the reference point cloud data, and calculates the computational cost. The determination unit determines whether the cost converges. as well as The variable component, when the cost does not converge, causes the position and orientation to change in the direction that reduces the cost. The generating unit, Principal component analysis is performed on a set of points that are adjacent to each other in the sensing space as a whole to generate a plane with the principal axis having the smallest intrinsic value as its normal. The plane that minimizes the sum of the squared distances of all points in the set of points is used as the input plane model to generate the model. The shape information includes information representing the inherent value. The extraction unit extracts the extracted plane model by discarding input plane models whose inherent values ​​are above a certain value. The multiple reference plane models are contained in a reference plane model group. The reference plane model is generated by treating a predetermined number of adjacent points in the reference point cloud data of the map information as a whole and performing principal component analysis. The computing unit, Search among the multiple reference plane models included in the reference plane model group for the reference plane model that is closest to the extracted plane model. The searched reference plane model is determined as the object reference plane model. The cost is calculated based on the distance between the object reference plane model and the extracted plane model. The transformation unit changes the position and orientation of the extracted plane model group relative to the reference plane model group by changing the relative translational and rotational positions of the reference plane model group and the extracted plane model group in the three-dimensional coordinate system.

4. The point cloud data matching device according to claim 3, The extraction unit extracts the extracted plane model by eliminating the input plane model whose centroid is closest to the point set.

5. A method for matching point cloud data, comprising: The generation steps include generating an input elliptic model with reduced point cloud data and generating an input elliptic model group containing multiple said input elliptic models, wherein the point cloud data is input point cloud data obtained by a sensor that measures the distance to surrounding objects. Based on the shape information of the input elliptic models contained in the input elliptic model group, a portion of the input elliptic models are extracted from the input elliptic model group as extracted elliptic models, and a model group containing multiple extracted elliptic models is used as the extraction step of the extracted elliptic model group. The calculation step involves comparing the extracted elliptic model with a reference elliptic model based on reference point cloud data to calculate the cost. The steps for determining whether the cost converges; and The steps for changing the position and pose in a direction that reduces the cost when the cost does not converge. In the generation step, The sensing space is divided into multiple voxels. Principal component analysis is performed on the set of points that are considered as a whole within a voxel to generate an input elliptic model formed by three principal axes. By generating an input elliptic model for each voxel, a group of input elliptic models containing multiple input elliptic models is generated. The shape information refers to the shape, position, and orientation of the input elliptic model. In the extraction step, the extracted elliptic model is extracted by removing input elliptic models that are close in position or orientation from the input elliptic models included in the input elliptic model group. Multiple reference elliptic models are contained in a reference elliptic model group. The reference elliptic model is generated by segmenting the reference point cloud data of the map information into voxels and performing principal component analysis on points contained in a voxel in the reference point cloud data. The reference elliptic model group is generated by performing the principal component analysis on each voxel. In the calculation step, Search among the multiple reference ellipsoid models included in the group of reference ellipsoid models for the reference ellipsoid model that is closest to the extracted ellipsoid model. The searched reference elliptic model is identified as the object reference elliptic model. The cost is calculated based on the distance between the object reference elliptic model and the extracted elliptic model. In the transformation step, the position and pose of the extracted elliptic model group relative to the reference elliptic model group are changed by changing the relative translational and rotational positions of the reference elliptic model group and the extracted elliptic model group in the three-dimensional coordinate system.

6. The point cloud data matching method according to claim 5, In the extraction step, the extracted elliptic model is extracted by removing input elliptic models that are close to spherical.

7. A method for matching point cloud data, comprising: The steps of generating an input plane model with reduced data volume of point cloud data and generating an input plane model group containing multiple said input plane models, wherein the point cloud data is input point cloud data obtained by a sensor that measures the distance to surrounding objects; Based on the shape information of the input plane models contained in the input plane model group, a portion of the input plane models are extracted from the input plane model group as extracted plane models, and a model group containing multiple extracted plane models is used as the extraction step of the extracted plane model group; The calculation step involves comparing the extracted plane model with a reference plane model based on reference point cloud data to calculate the cost. The steps for determining whether the cost converges; and The steps for changing the position and pose in a direction that reduces the cost when the cost does not converge. In the generation step, Principal component analysis is performed on a set of points that are adjacent to each other in the sensing space as a whole to generate a plane with the principal axis having the smallest intrinsic value as its normal. The plane that minimizes the sum of the squared distances of all points in the set of points is used as the input plane model to generate the model. The shape information includes information representing the inherent value. In the extraction step, the extracted plane model is extracted by discarding input plane models whose inherent values ​​exceed a certain value. Multiple reference plane models are contained in a reference plane model group. The reference plane model is generated by treating a predetermined number of adjacent points in the reference point cloud data of the map information as a whole and performing principal component analysis. In the calculation step, Search among the multiple reference plane models included in the reference plane model group for the reference plane model that is closest to the extracted plane model. The searched reference plane model is determined as the object reference plane model. The cost is calculated based on the distance between the object reference plane model and the extracted plane model. In the transformation step, the position and pose of the extracted plane model group relative to the reference plane model group are changed by changing the relative translational and rotational positions of the reference plane model group and the extracted plane model group in the three-dimensional coordinate system.

8. The point cloud data matching method according to claim 7, In the extraction step, the extracted plane model is extracted by removing the input plane model whose centroid is close to the point set.

9. A computer-readable medium storing a program that enables a computer to perform a method for matching point cloud data. The matching method includes: The generation steps include generating an input elliptic model with reduced point cloud data and generating an input elliptic model group containing multiple said input elliptic models, wherein the point cloud data is input point cloud data obtained by a sensor that measures the distance to surrounding objects. Based on the shape information of the input elliptic models contained in the input elliptic model group, a portion of the input elliptic models are extracted from the input elliptic model group as extracted elliptic models, and a model group containing multiple extracted elliptic models is used as the extraction step of the extracted elliptic model group. The calculation step involves comparing the extracted elliptic model with a reference elliptic model based on reference point cloud data to calculate the cost. The steps for determining whether the cost converges; and The steps for changing the position and pose in a direction that reduces the cost when the cost does not converge. In the generation step, The sensing space is divided into multiple voxels. Principal component analysis is performed on the set of points contained in a voxel as a whole to generate an input elliptic model formed by three principal axes. By generating an input elliptic model for each voxel, a group of input elliptic models containing multiple input elliptic models is generated. The shape information refers to the shape, position, and orientation of the input elliptic model. In the extraction step, the extracted elliptic model is extracted by removing input elliptic models that are close in position or orientation from the input elliptic models included in the input elliptic model group. Multiple reference elliptic models are contained in a reference elliptic model group. The reference elliptic model is generated by segmenting the reference point cloud data of the map information into voxels and performing principal component analysis on points contained in a voxel in the reference point cloud data. The reference elliptic model group is generated by performing the principal component analysis on each voxel. In the calculation step, Search among the multiple reference ellipsoid models included in the group of reference ellipsoid models for the reference ellipsoid model that is closest to the extracted ellipsoid model. The searched reference elliptic model is identified as the object reference elliptic model. The cost is calculated based on the distance between the object reference elliptic model and the extracted elliptic model. In the transformation step, the position and pose of the extracted elliptic model group relative to the reference elliptic model group are changed by changing the relative translational and rotational positions of the reference elliptic model group and the extracted elliptic model group in the three-dimensional coordinate system.

10. The computer-readable medium according to claim 9, In the extraction step, the extracted elliptic model is extracted by removing input elliptic models that are close to spherical.

11. A computer-readable medium storing a program that enables a computer to perform a method for matching point cloud data. The matching method includes: The steps of generating an input plane model with reduced data volume of point cloud data and generating an input plane model group containing multiple said input plane models, wherein the point cloud data is input point cloud data obtained by a sensor that measures the distance to surrounding objects; Based on the shape information of the input plane models contained in the input plane model group, a portion of the input plane models are extracted from the input plane model group as extracted plane models, and a model group containing multiple extracted plane models is used as the extraction step of the extracted plane model group; The calculation step involves comparing the extracted plane model with a reference plane model based on reference point cloud data to calculate the cost. The steps for determining whether the cost converges; and The steps for changing the position and pose in a direction that reduces the cost when the cost does not converge. In the generation step, Principal component analysis is performed on a set of points that are adjacent to each other in the sensing space as a whole to generate a plane with the principal axis having the smallest intrinsic value as its normal. The plane that minimizes the sum of the squared distances of all points in the set of points is used as the input plane model to generate the model. The shape information includes information representing the inherent value. In the extraction step, the extracted plane model is extracted by discarding input plane models whose inherent values ​​exceed a certain value. The multiple reference plane models are contained in a reference plane model group. The reference plane model is generated by treating a predetermined number of adjacent points in the reference point cloud data of the map information as a whole and performing principal component analysis. In the calculation step, Search among the multiple reference plane models included in the reference plane model group for the reference plane model that is closest to the extracted plane model. The searched reference plane model is determined as the object reference plane model. The cost is calculated based on the distance between the object reference plane model and the extracted plane model. In the transformation step, the position and pose of the extracted plane model group relative to the reference plane model group are changed by changing the relative translational and rotational positions of the reference plane model group and the extracted plane model group in the three-dimensional coordinate system.

12. The computer-readable medium according to claim 11, In the extraction step, the extracted plane model is extracted by removing the input plane model whose centroid is close to the point set.