Determination apparatus, method, program, and storage medium
The determination device uses principal component analysis to differentiate vegetation from other structures in measurement point clouds, enhancing the accuracy of vegetation extraction in map data updates.
Patent Information
- Application Number
- JP2025180149
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-10-27
- Publication Date
- 2026-02-03
AI Technical Summary
Existing methods struggle to accurately distinguish vegetation from other structures in measurement point clouds, leading to decreased accuracy in vegetation extraction.
A determination device that calculates the principal components of measurement point clouds for each region, determining regions forming planes, columns, and vegetation by analyzing the variance and direction of these components, using a method that includes principal component analysis.
Accurately identifies regions containing vegetation, improving the accuracy of vegetation extraction in map data updates.
Smart Images

Figure 2026016590000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to map generation technology. [Background technology]
[0002] Conventionally, techniques for updating map data based on the output of sensors installed in a vehicle have been known. For example, Patent Document 1 discloses a map update system including an on-board device that transmits error information representing the difference between the measured vehicle position and the traveling position on the map data to a server together with position information, and a server that stores the received position information and error information in an error database and determines the need for updating for each piece of position information based on the error database. Furthermore, Non-Patent Document 1 discloses a technique for recognizing measurement point clouds that constitute vegetation such as trees by analyzing measurement point clouds obtained from a lidar or the like. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2016-180980 [Non-patent literature]
[0004] [Non-Patent Document 1] Fabrice Monnier, Bruno Vallet, Bahman Soheilian, Trees Detection from Laser Point Clouds Acquired in Dense Urban Areas by a Mobile Mapping System, [online], 2012, ISPRS Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences, [Retrieved July 14, 2018], Internet〈URL:https: / / www.isprs-ann-photogramm-remote-sens-spatial-inf-sci.net / I-3 / 245 / 2012 / isprsannals-I-3-245-2012.pdf〉 Summary of the Invention [Problem to be solved by the invention]
[0005] According to the method described in Non-Patent Document 1, when a measurement point cloud of a specific structure other than vegetation is detected, the measurement point cloud of that structure is excluded from the candidates for the measurement point cloud that constitutes vegetation. On the other hand, while the method described in Non-Patent Document 1 can detect specific structures such as buildings that constitute vertical planes, there are structures that are difficult to capture using this method, and when such structures are present, there is a problem in that the accuracy of vegetation extraction decreases.
[0006] The present invention has been made to solve the above-mentioned problems, and its main purpose is to provide a determination device that can accurately determine the presence of vegetation based on a group of measurement points measured by a measuring device. [Means for solving the problem]
[0007] The claimed invention is a determination device that includes a calculation means for calculating, for each region divided into spaces, the principal components of a cloud of measurement points on the surface of an object measured by a measuring device included in one region; a first determination means for determining a first region, which is the region in which the cloud of measurement points forms a predetermined shape, based on the calculation results of the calculation means; and a third determination means for determining a region that includes the cloud of measurement points but does not fall into the first region, as a third region that includes vegetation. The invention described in the claims is a method executed by a determination device, which calculates, for each region divided into spaces, the principal components of the measurement point cloud on the surface of an object measured by a measuring device included in one region, and determines a first region, which is the region in which the measurement point cloud forms a predetermined shape, based on the calculation results of the calculation means, and determines a region that includes the measurement point cloud but does not fall into the first region as a third region that includes vegetation. The claimed invention also calculates, for each region obtained by dividing a space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in one region, determining a first region, which is the region in which the measurement point cloud forms a predetermined shape, based on the calculation result of the calculation means; The program causes a computer to execute a process of determining an area that includes the measurement point cloud and does not correspond to the first area as a third area that includes vegetation. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a schematic configuration of a map update system. [Figure 2] 2 shows block configurations of an in-vehicle device and a server device. [Figure 3] 1 shows an example of a schematic data structure of voxel data. [Figure 4] 10 is a flowchart relating to a process of generating voxel data. [Figure 5] 10 is a flowchart showing the procedure of a vegetation determination process. [Figure 6] (A) Schematic of the distribution of measurement points within a voxel containing a plane. (B) An example of the arrangement of neighboring candidate voxels. [Figure 7] (A) Schematic of the distribution of measurement points within a voxel containing a wall. (B) An example of the arrangement of neighboring candidate voxels. [Figure 8] (A) Schematic of the distribution of measurement points in a voxel containing a columnar body. (B) An example of a voxel where the contribution rate of the first principal component is equal to or greater than a predetermined value and the variance of the first principal component is different from a uniform distribution. [Figure 9] (A) Schematic of the distribution of measurement points within a voxel containing a horizontal column. (B) An example of the arrangement of neighboring candidate voxels. DETAILED DESCRIPTION OF THE INVENTION
[0009] According to a preferred embodiment of the present invention, the determination device includes: a calculation means for calculating, for each partitioned region of space, the principal components of a cloud of measurement points on the surface of an object measured by a measurement device included in the partitioned region; a first determination means for determining, based on the calculation results of the calculation means, a first region, which is the region where the measurement point cloud forms a plane; a second determination means for determining, based on the calculation results of the calculation means, a second region, which is the region where the measurement point cloud forms a columnar body; and a third determination means for determining, as a third region, a region including the measurement point cloud that does not correspond to either the first region or the second region, including vegetation. A "partitioned region of space" refers to a region obtained by dividing a space according to a predetermined rule, such as a rectangular parallelepiped or cube of a uniform size. Furthermore, the term "principal component" is synonymous with the principal components in principal component analysis. In the case of a three-dimensional space, the first through third principal components exist in descending order of variance.
[0010] According to this aspect, the determination device calculates the principal components of the measurement point cloud for each region obtained by dividing the space, thereby accurately determining the regions where the measurement point cloud forms planes and columns, thereby enabling the determination device to accurately determine the regions that include vegetation.
[0011] In one aspect of the above determination device, the first determination means determines the first region based on the variance of a third principal component of the measurement point cloud for each region. This aspect allows the determination device to accurately determine the first region.
[0012] In another aspect of the above-described determination device, the second determination means determines the second region based on a contribution rate and variance of a first principal component of the measurement point cloud for each region. This aspect enables the determination device to accurately determine the second region.
[0013] In another aspect of the above determination device, the first determination means determines the region in which the direction of the third principal component substantially coincides with the vertical direction as the first region. With this aspect, the determination device can suitably determine the region in which the measurement point cloud forms the ground surface as the first region.
[0014] In another aspect of the above determination device, the first determination means determines the region in which the direction of the third principal component substantially coincides with the horizontal direction as the first region. With this aspect, the determination device can suitably determine, as the first region, an adjacent region in which the measurement point cloud forms a wall surface.
[0015] In another aspect of the above determination device, the first determination means determines, as the first region, a region in which the direction of the third principal component substantially coincides with the horizontal direction and which is adjacent to a region in which the direction of the third principal component substantially coincides with or differs by substantially 180° from the region in question. In this aspect, the determination device can accurately determine, as the first region, a region in which the measurement point cloud forms a wall surface, based on the premise that a wall surface exists across a plurality of regions.
[0016] In another aspect of the above determination device, the second determination means determines, as the second region, a region in which the direction of the first principal component of the measurement point cloud for each region substantially coincides with the vertical direction. With this aspect, the determination device can suitably determine, as the second region, a region in which the measurement point cloud forms a vertical column (a column extending in the vertical direction).
[0017] In another aspect of the above determination device, the second determination means determines, as the second region, a region in which the direction of the first principal component of the measurement point cloud for each region substantially coincides with the horizontal direction. With this aspect, the determination device can suitably determine, as the second region, a region in which the measurement point cloud forms a horizontal column (a column extending in the horizontal direction).
[0018] In another aspect of the above determination device, the first determination means determines, as the second region, a region in which the direction of the first principal component substantially coincides with the horizontal direction and which is adjacent to a region in which the direction of the first principal component substantially coincides with or is substantially 180° different from that of the region in question. In this aspect, the determination device can accurately determine, based on the premise that a horizontal columnar body exists across multiple regions, an adjacent region in which the measurement point cloud forms a horizontal columnar body as the second region.
[0019] In another aspect of the above determination device, the first determination means, among a plurality of first candidate areas that are candidates for the first area determined based on the calculation result of the calculation means, determines one first candidate area as the first area when another first candidate area is adjacent to the first candidate area, and the second determination means, among a plurality of second candidate areas that are candidates for the second area determined based on the calculation result of the calculation means, determines one second candidate area as the second area when another second candidate area is adjacent to the second candidate area. This aspect enables the determination device to suitably improve the accuracy of determination of the first area and the second area.
[0020] According to another preferred embodiment of the present invention, a control method executed by a determination device includes the following steps: a calculation step of calculating, for each region obtained by dividing a space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in the region; a first determination step of determining, based on the calculation result of the calculation step, a first region where the measurement point cloud forms a plane; a second determination step of determining, based on the calculation result of the calculation step, a second region where the measurement point cloud forms a columnar body; and a third determination step of determining, as a third region containing vegetation, a region that includes the measurement point cloud but does not correspond to either the first region or the second region. By executing this control method, the determination device can accurately determine a region containing vegetation.
[0021] According to another preferred embodiment of the present invention, a computer-executable program causes the computer to function as: a calculation means for calculating, for each region obtained by dividing a space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in the region; a first determination means for determining, based on the calculation result of the calculation means, a first region where the measurement point cloud forms a plane; a second determination means for determining, based on the calculation result of the calculation means, a second region where the measurement point cloud forms a columnar body; and a third determination means for determining, as a third region containing vegetation, a region containing the measurement point cloud that does not correspond to either the first region or the second region. By executing this program, the computer can accurately determine a region containing vegetation. Preferably, the program is stored in a storage medium. [Example]
[0022] Preferred embodiments of the present invention will now be described with reference to the drawings.
[0023] [Map update system overview] Fig. 1 shows a schematic configuration of a map update system according to this embodiment. The map update system includes an onboard device 1 that travels with a vehicle, and a server device 2 that distributes map information. Note that Fig. 1 shows only one pair of onboard device 1 and vehicle that communicate with the server device 2, but in reality, there are multiple pairs of onboard devices 1 and vehicles at different locations.
[0024] The vehicle-mounted device 1 is electrically connected to external sensors such as a Lidar (Light Detection and Ranging, or Laser Illuminated Detection and Ranging) and internal sensors such as a gyro sensor and a vehicle speed sensor, and estimates the position of the vehicle (also referred to as the "vehicle position") on which the vehicle-mounted device 1 is mounted based on the outputs of these sensors. Based on the result of estimating the vehicle position, the vehicle-mounted device 1 performs automatic driving control of the vehicle so that the vehicle travels along a route to a set destination. The vehicle-mounted device 1 stores a map database (DB: DataBase) 10 containing voxel data. The voxel data is data that records position information of stationary structures for each region (also referred to as a "voxel") when a three-dimensional space is divided into multiple regions. The voxel data includes point cloud data of measured measurement points of stationary structures within each voxel, expressed using a normal distribution, and is used for scan matching using the normal distribution transform (NDT), as described below.
[0025] The vehicle-mounted device 1 estimates the vehicle position by performing scan matching based on NDT, based on point cloud data obtained by converting measurement points on the surface of an object output by the lidar into an absolute coordinate system, and voxel data corresponding to the voxels to which the point cloud data belongs. The vehicle-mounted device 1 also transmits measurement data "D1" including the above-mentioned point cloud data to the server device 2. The vehicle-mounted device 1 also receives update data "D2" related to the map DB 10 from the server device 2, thereby updating the map DB 10.
[0026] The server device 2 performs data communication with the in-vehicle devices 1 corresponding to a plurality of vehicles. The server device 2 stores a delivery map DB 23 to be delivered to the in-vehicle devices 1 corresponding to a plurality of vehicles, and the delivery map DB 23 includes voxel data corresponding to each voxel. The server device 2 accumulates measurement data D1 received from the in-vehicle devices 1, generates voxel data based on the accumulated measurement data D1, and updates the delivery map DB 23 based on the generated voxel data. The server device 2 also transmits update data D2 including the generated voxel data to the in-vehicle devices 1. The server device 2 is an example of a "determination device" in the present invention.
[0027] [In-vehicle device configuration] Fig. 2(A) is a block diagram showing the functional configuration of the vehicle-mounted device 1. As shown in Fig. 2(A), the vehicle-mounted device 1 mainly includes a communication unit 11, a memory unit 12, a sensor unit 13, an input unit 14, a control unit 15, and an output unit 16. The communication unit 11, the memory unit 12, the sensor unit 13, the input unit 14, the control unit 15, and the output unit 16 are connected to each other via a bus line.
[0028] Based on the control of the control unit 15, the communication unit 11 transmits measurement data D1 generated by the control unit 15 to the server device 2 and receives update data D2 distributed from the server device 2. The communication unit 11 also transmits signals for controlling the vehicle to the vehicle and receives signals related to the vehicle's state from the vehicle.
[0029] The storage unit 12 stores programs executed by the control unit 15 and information required for the control unit 15 to execute predetermined processes. In this embodiment, the storage unit 12 stores a map DB 10 including voxel data.
[0030] The sensor unit 13 includes a lidar 30, a camera 31, a GPS receiver 32, a gyro sensor 33, and a speed sensor 34. The lidar 30 emits a pulsed laser beam within a predetermined angular range in the horizontal and vertical directions to discretely measure the distance to an object in the external world and generate three-dimensional point cloud data indicating the position of the object. In this case, the lidar 30 includes an irradiation unit that irradiates laser light while changing the irradiation direction, a light receiving unit that receives reflected light (scattered light) of the irradiated laser light, and an output unit that outputs scan data based on a light receiving signal output by the light receiving unit. The scan data is generated based on the irradiation direction corresponding to the laser light received by the light receiving unit and the response delay time of the laser light identified based on the above-mentioned light receiving signal. The lidar 30 is an example of a "measurement device" in the present invention.
[0031] The input unit 14 is a button, touch panel, remote controller, voice input device, etc. that is operated by the user, and receives inputs such as inputs specifying a destination for route search and inputs specifying whether autonomous driving is on or off, and supplies the generated input signals to the control unit 15. The output unit 16 is, for example, a display, a speaker, etc. that outputs based on the control of the control unit 15.
[0032] The control unit 15 includes a CPU that executes programs and controls the entire in-vehicle device 1. For example, the control unit 15 estimates the vehicle position by performing scan matching based on NDT, based on point cloud data obtained by converting output data from the LIDAR 30 into an absolute coordinate system and voxel data corresponding to voxels to which the point cloud data belongs. The control unit 15 also updates the map DB 10 based on update data D2 received by the communication unit 11 from the server device 2.
[0033] Furthermore, the control unit 15 transmits measurement data D1 generated based on the point cloud data output from the LIDAR 30 to the server device 2 via the communication unit 11. In this case, for example, the control unit 15 converts the point cloud data of measurement points output from the LIDAR 30 into an absolute coordinate system based on the estimated vehicle position and information on the position and attitude of the LIDAR 30 relative to the vehicle, and includes the converted point cloud data in the measurement data D1 and transmits the measurement data D1 to the server device 2 via the communication unit 11. In another example, the control unit 15 includes the point cloud data (so-called raw data) output from the LIDAR 30 and data (such as the above-mentioned vehicle position) required to convert the point cloud data into the absolute coordinate system in the measurement data D1 and transmits the measurement data D1 to the server device 2 via the communication unit 11. In the latter example, the server device 2 generates point cloud data of measurement points represented in the absolute coordinate system based on the measurement data D1.
[0034] [Server device configuration] Fig. 2(B) shows a schematic configuration of the server device 2. As shown in Fig. 2(B), the server device 2 has a communication unit 21, a storage unit 22, and a control unit 25. The communication unit 21, the storage unit 22, and the control unit 25 are connected to each other via a bus line.
[0035] The communication unit 21 communicates various data with the vehicle-mounted device 1 under the control of the control unit 25. The storage unit 22 stores programs for controlling the operation of the server device 2 and holds information necessary for the operation of the server device 2. The storage unit 22 also stores a delivery map DB 23 and a measurement point cloud DB 24 that records point cloud data of measurement points of objects based on measurement data D1 transmitted from multiple vehicle-mounted devices 1.
[0036] The control unit 25 includes a CPU, ROM, RAM, etc. (not shown), and performs various controls on the components of the server device 2. In this embodiment, the control unit 25 accumulates the measurement data D1 received by the communication unit 21 from the vehicle-mounted device 1 in the measurement point cloud DB 24, and generates voxel data based on the accumulated measurement data D1. In this case, the control unit 25 determines for each voxel whether the voxel contains vegetation, and based on the determination result, generates a weighting value and a vegetation flag (described later) to include in the voxel data. The control unit 25 also transmits update data D2 based on the generated voxel data to the vehicle-mounted device 1 via the communication unit 21. The control unit 25 is an example of the "calculation means," "first determination means," "second determination means," "third determination means," and "computer" that executes a program in the present invention.
[0037] [NDT-based scan matching] Next, scan matching based on NDT in this embodiment will be described.
[0038] First, we will explain the voxel data used in scan matching based on the NDT. Figure 3 shows an example of a schematic data structure of the voxel data.
[0039] The voxel data includes parameter information for expressing a point cloud within a voxel using a normal distribution. In this embodiment, as shown in FIG. 3, the data includes a voxel ID, voxel coordinates, a mean vector, a covariance matrix, a weighting value, and a vegetation flag. Here, "voxel coordinates" indicate the absolute three-dimensional coordinates of a reference position, such as the center position of each voxel. Each voxel is a cube obtained by dividing space into a grid, and since its shape and size are predetermined, the space of each voxel can be identified by its voxel coordinates. The voxel coordinates may also be used as a voxel ID.
[0040] The "mean vector" and "covariance matrix" are the parameters when expressing the point cloud in the target voxel as a normal distribution. The coordinates of any point "i" in any voxel "n" are expressed as X n(i)=[x n (i), y n (i), z n (i)] T and the number of points in voxel n is defined as "N n ", then the mean vector at voxel n is "μ n ” and the covariance matrix “V n " are expressed by the following formulas (1) and (2), respectively.
[0041]
number
[0042]
number
[0043] The "weighting value" is set to a value according to the reliability of the voxel data (particularly the mean vector and covariance matrix) of the target voxel, and represents the weighting value set for the target voxel in scan matching. In this embodiment, the weighting value for a voxel determined to contain vegetation (also called a "vegetation voxel Bv") is set lower than the weighting values for other voxels. The weighting value is an example of a "weight" in the present invention. The "vegetation flag" is flag information indicating whether the target voxel is a voxel containing vegetation.
[0044] Next, scan matching by NDT using voxel data will be described. In this embodiment, as will be described later, the vehicle-mounted device 1 calculates the value of the evaluation function (evaluation value) obtained by NDT scan matching by weighting it using the weighting value included in the voxel data. As a result, the vehicle-mounted device 1 suitably improves the accuracy of position estimation based on NDT scan matching.
[0045] Scan matching using NDT assuming a vehicle is performed by estimating parameters P = [t x , ty , t z , t ψ ] T Here, "t x " indicates the amount of movement in the x direction, and "t y " indicates the amount of movement in the y direction, and "t z " indicates the amount of movement in the z direction, and "t ψ " indicates the yaw angle (amount of change in angle in the yaw direction). Note that although pitch and roll angles are generated by road gradients and vibrations, they are small enough to be ignored.
[0046] When the measurement points obtained by the lidar 2 are converted into the absolute coordinate system and the voxels to be matched are associated with each other, the coordinates of any point in the corresponding voxel n are expressed as X L (i)=[x n (i), y n (i), z n (i)] T Then, using the above estimated parameter P, X L (i)=[x n (i), y n (i), z n (i)] T When the coordinate is converted, the converted coordinate "X' n " is expressed by the following equation (3).
[0047]
number
[0048]
number
[0049] In addition, after calculating the evaluation function value (also called "individual evaluation function value") for each voxel shown by equation (4), the vehicle-mounted device 1 calculates an overall evaluation function value "E" (also called "overall evaluation function value") for all voxels that are the subject of matching shown by equation (5).
[0050]
number
[0051] Then, the vehicle-mounted device 1 calculates the estimation parameters P that maximize the overall evaluation function value E using an arbitrary root-finding algorithm such as Newton's method. Then, the vehicle-mounted device 1 calculates the vehicle position "X - By applying the estimation parameter P to the ^ " is estimated.
[0052] In this way, the vehicle-mounted device 1 multiplies each voxel data (mean vector, covariance matrix) by a weighting value according to whether it is a vegetation voxel Bv or not. As a result, the evaluation function E n becomes relatively small, and the accuracy of position estimation by NDT matching is suitably improved.
[0053] [Determining vegetation voxels] Next, we will explain the process of determining vegetation voxels Bv that is executed when generating voxel data by the server device 2. In summary, the server device 2 determines voxels that represent planar or columnar structures by performing principal component analysis on each voxel of the measurement point cloud recorded in the measurement point cloud DB 24, and determines voxels that do not correspond to either planar or columnar structures as vegetation voxels Bv.
[0054] (1) Processing flow 4 is a flowchart of the voxel data generation process executed by the server device 2. The server device 2 executes the process of the flowchart shown in FIG. 4 at a predetermined timing.
[0055] First, the server device 2 recognizes the voxel to which each measurement point recorded in the measurement point group DB 24 belongs, and calculates the mean vector and covariance matrix of the measurement point for each voxel based on the above-mentioned equations (1) and (2) (step S101).
[0056] Next, the server device 2 executes a vegetation determination process for determining whether each voxel including the measurement point is a vegetation voxel Bv (step S102). The procedure of this vegetation determination process will be described later with reference to the flowchart of FIG.
[0057] Then, the server device 2 sets a weighting value and a vegetation flag for each voxel based on the determination result in step S102 (step S103). For example, the server device 2 stores in advance setting information indicating the weighting values and vegetation flag values to be assigned to the vegetation voxels Bv and other voxels. Then, the server device 2 refers to the setting information and assigns different weighting values and vegetation flags to the voxels determined to be vegetation voxels Bv in step S103 and the voxels other than the vegetation voxels Bv.
[0058] 5, the server device 2 may execute processing to remove measurement point clouds that indicate dynamic objects from the measurement point clouds recorded in the measurement point cloud DB 24. For example, the server device 2 identifies measurement point clouds that form specific dynamic objects such as pedestrians or vehicles based on processing such as pattern matching based on the shape, size, etc., and deletes the identified measurement point clouds from the measurement point cloud DB 24.
[0059] FIG. 5 is a flowchart showing the procedure of the vegetation determination process executed in step S102 of FIG.
[0060] First, the server device 2 performs principal component analysis for each voxel on the measurement point cloud recorded in the measurement point cloud D24 (step S201). Specifically, the server device 2 calculates three sets of eigenvalues and eigenvectors corresponding to the first to third principal components from the covariance matrix for each voxel calculated in step S101 of FIG. 4. Here, the eigenvalue indicates the variance (i.e., magnitude) of each principal component, and the eigenvector indicates the direction of each principal component. Therefore, the server device 2 considers that the largest eigenvalue and its corresponding eigenvector correspond to the first principal component, the second largest eigenvalue and its corresponding eigenvector correspond to the second principal component, and the remaining eigenvalues and eigenvectors correspond to the third principal component. Note that the first to third principal components are orthogonal to each other.
[0061] Then, based on the result of the principal component analysis in step S201, the server device 2 extracts voxels that form a plane (also referred to as "plane voxels Bf") (step S202). The method for extracting these plane voxels Bp will be described in detail later. Furthermore, based on the result of the principal component analysis in step S201, the server device 2 extracts voxels that form a columnar body (also referred to as "columnar voxels Bp") (step S203). The method for extracting these columnar voxels Bp will be described in detail later.
[0062] The server device 2 then determines the remaining voxels, which do not correspond to either planar voxels Bf or columnar voxels Bp, as vegetation voxels Bv (step S204). Most static structures that are not vegetation are composed of planar or columnar shapes, and the applicant has obtained good recognition results for vegetation voxels Bv in experiments and the like by regarding voxels excluding voxels of the measurement point cloud that form planar or columnar shapes as vegetation voxels Bv.
[0063] The planar voxel Bf is an example of a "first region" in the present invention, the columnar voxel Bp is an example of a "second region" in the present invention, and the vegetation voxel Bv is an example of a "third region" in the present invention.
[0064] (2) Planar Voxel Extraction Next, a specific method for extracting planar voxels Bf executed in step S202 of Fig. 5 will be described. In this embodiment, the server device 2 executes a general plane extraction process for comprehensively detecting planar voxels Bf, as well as a ground surface extraction process for individually detecting voxels representing the ground surface and a wall surface extraction process for individually detecting voxels representing wall surfaces. The server device 2 then recognizes voxels determined to be planar in either process as planar voxels Bf.
[0065] (2-1) General plane extraction processing In the general plane extraction process, the server device 2 selects voxels whose magnitude of the third principal component (i.e., the variance indicated by the eigenvalue of the third principal component) is equal to or less than a predetermined value as voxels (also referred to as "candidate voxels") that are candidates for the planar voxel Bf. The server device 2 then regards a candidate voxel that has other candidate voxels in its neighboring voxels as a planar voxel Bf. A candidate voxel that is a candidate for the planar voxel Bf is an example of a "first candidate region" in the present invention.
[0066] Figure 6(A) shows a schematic diagram of the distribution of measurement points within a voxel that is considered a candidate voxel by the general plane extraction process. Note that, hereafter, the x-axis and y-axis are assumed to be orthogonal axes in a horizontal plane, and the z-axis is assumed to be an axis orthogonal to the horizontal plane (i.e., an axis extending vertically).
[0067] In the example of Figure 6(A), the measurement points are distributed on a plane to form an ellipse, and the server device 2 extracts the long axis direction of the ellipse as the first principal component, the short axis direction as the second principal component, and the thickness direction as the third principal component through principal component analysis. In this case, the server device 2 determines that the eigenvalue corresponding to the magnitude of the third principal component is equal to or less than a predetermined value, and regards the target voxel as a candidate voxel. The predetermined value is the upper limit of the eigenvalue of the third principal component that can be assumed when the object in the target voxel is planar, and is determined, for example, based on experiments.
[0068] 6(B) shows an example of the arrangement of adjacent candidate voxels. For each selected candidate voxel, the server device 2 regards voxels existing within a cubic region having a size of three voxels in length, width, and height centered on the target candidate voxel as surrounding voxels, and determines whether other candidate voxels than the target candidate voxel exist within the surrounding voxels. In the example of FIG. 6(B), since other candidate voxels exist adjacent to the target candidate voxel in the diagonally upward direction, the server device 2 regards these candidate voxels as planar voxels Bf.
[0069] Generally, it is assumed that an object having a planar shape exists across multiple voxels. In consideration of the above, the server device 2 regards these candidate vectors as planar voxels Bf only when the candidate voxels exist adjacent to each other. As a result, even if the server device 2 erroneously selects a voxel that does not have a planar object as a candidate voxel, it can suitably suppress the erroneously selected candidate voxel from being regarded as a planar voxel Bf based on the presence or absence of other adjacent candidate voxels.
[0070] (2-2) Ground surface extraction processing The server device 2 executes a ground surface extraction process and a wall surface extraction process (described later) to extract the plane voxels Bf that cannot be extracted by the general plane extraction process described above. In the ground surface extraction process, the server device 2 selects, as candidate voxels, voxels whose angle between the direction of the third principal component and the z-axis is approximately 0° or approximately 180°. In other words, the server device 2 selects, as candidate voxels, voxels whose direction indicated by the eigenvector corresponding to the third principal component approximately coincides with the vertical direction.
[0071] Generally, the direction of the third principal component of the measurement point cloud of the earth's surface is the thickness direction of the earth's surface, which coincides with the vertical direction. Therefore, the server device 2 can suitably identify candidate voxels that are candidates for voxels that constitute the earth's surface, based on the eigenvector corresponding to the third principal component.
[0072] Furthermore, for each selected candidate voxel, the server device 2 determines whether other candidate voxels exist among the neighboring surrounding voxels (see FIG. 6(B)), and if the other candidate voxels exist, the server device 2 regards the target candidate voxel (and the other candidate voxels) as a planar voxel Bf. In general, it is assumed that the ground surface exists across multiple voxels. Therefore, even if the server device 2 mistakenly selects a voxel that does not have a ground surface as a candidate voxel, it can appropriately select a planar voxel Bf based on the presence or absence of other neighboring candidate voxels.
[0073] (2-3) Wall extraction processing In the wall surface extraction process, the server device 2 selects, as candidate voxels, voxels whose direction indicated by the eigenvector corresponding to the third principal component substantially coincides with the horizontal direction. Generally, a wall surface is provided perpendicular to the ground, so that the direction of the third principal component of the measurement point cloud forming the wall surface substantially coincides with the horizontal direction. Therefore, the server device 2 can suitably identify candidate voxels that are candidates for voxels constituting the wall surface based on the eigenvector corresponding to the third principal component.
[0074] 7A shows a schematic diagram of the distribution of the measurement points in a voxel including a wall surface. As shown in FIG. 7A, in this case, the angle between the direction of the third principal component and the z-axis is approximately 90 degrees. In other words, the direction indicated by the eigenvector corresponding to the third principal component is approximately the horizontal direction. Therefore, in this case, the server device 2 selects the target voxel as a candidate voxel because the direction indicated by the eigenvector corresponding to the third principal component is approximately the horizontal direction.
[0075] Furthermore, the server device 2 selects, as a planar voxel Bf, a candidate voxel whose surrounding voxels have the same or 180° different orientation of the third principal component. Generally, it is assumed that a wall surface exists across multiple voxels, and that the normals of the wall surfaces within each voxel are parallel. Therefore, by selecting the planar voxel Bf in this manner, the server device 2 can effectively prevent erroneous selection of the planar voxel Bf.
[0076] Fig. 7(B) shows an example of the arrangement of adjacent candidate voxels. For each selected candidate voxel, the server device 2 determines whether or not there are other candidate voxels whose third principal component has the same orientation or a 180-degree difference in orientation among the surrounding voxels existing within a cubic region having a size of three voxels in length, width, and height centered on the target candidate voxel. In the example of Fig. 6(B), other candidate voxels whose third principal component has the same orientation or a 180-degree difference in orientation exist adjacent to the selected candidate voxel in the diagonal direction, so the server device 2 regards these candidate voxels as planar voxels Bf.
[0077] (3) Extraction of columnar voxels Next, a specific method for extracting columnar voxels Bp, which is executed in step S203 of FIG. 5, will be described. In this embodiment, the server device 2 executes a general columnar extraction process for comprehensively detecting columnar voxels Bp, as well as a vertical columnar extraction process for individually detecting voxels representing vertical columns, which are columns extending in the vertical direction, and a horizontal columnar extraction process for individually detecting voxels representing horizontal columns, which are columns extending in the horizontal direction. The server device 2 then recognizes voxels determined to be columns in either process as columnar voxels Bp. In the following description, the term "candidate voxel" refers to a voxel that is a candidate for the columnar voxel Bp. A candidate voxel that is a candidate for the columnar voxel Bp is an example of a "second candidate region" in the present invention.
[0078] (3-1) General columnar body extraction processing In the general columnar body extraction process, the server device 2 extracts, as candidate voxels, voxels in which the contribution rate of the first principal component is equal to or greater than a predetermined value and the variance of the first principal component is close to a uniform distribution.
[0079] FIG. 8(A) shows a schematic distribution of a measurement point cloud in a voxel including a columnar body. In this case, the server device 2 calculates, for example, the ratio of the eigenvalue of the first principal component to the sum of the eigenvalues of the first to third principal components as the contribution rate of the first principal component. Furthermore, the server device 2 determines whether the variance of the first principal component is close to a uniform distribution by, for example, calculating whether the eigenvalue of the first principal component is "(ba) 2 The server device 2 determines whether the difference between "ba" and "ba / 12" is within a predetermined value. Note that the above "ba" refers to the difference between the maximum and minimum values of the measurement point cloud in coordinates with the first principal component as the coordinate axis. Then, with respect to the measurement point cloud in the voxel shown in FIG. 8(A), the server device 2 determines that the contribution rate of the first principal component is equal to or greater than a predetermined value and that the variance of the first principal component is close to a uniform distribution, and selects the voxel shown in FIG. 8(A) as a candidate voxel. The above predetermined value is the lower limit of the contribution rate of the first principal component that can be assumed when the object in the target voxel is a columnar body, and is determined, for example, based on experiments, etc.
[0080] 8(B) shows an example of a voxel that is not determined as a candidate voxel in the general columnar body extraction process. The measurement point cloud in the voxel shown in FIG. 8(B) has a distribution that differs from a uniform distribution in the direction of the first principal component. As a result, the variance of the first principal component has a variance value that differs from a uniform distribution. In this way, by setting a condition regarding the variance of the first principal component in addition to a condition regarding the contribution rate of the first principal component, the server device 2 can effectively prevent the voxel shown in FIG. 8(B) from being selected as a candidate voxel.
[0081] Furthermore, for each selected candidate voxel, the server device 2 determines whether other candidate voxels exist among the neighboring surrounding voxels, and if the other candidate voxels exist, the server device 2 regards the target candidate voxel (and the other candidate voxels) as a columnar voxel Bp. Generally, columnar bodies are expected to exist across multiple voxels. Therefore, even if the server device 2 erroneously selects a voxel without a columnar body as a candidate voxel, the server device 2 effectively suppresses the erroneous selection of a columnar voxel Bp based on the presence or absence of other neighboring candidate voxels.
[0082] (3-2) Vertical column extraction processing The server device 2 executes a vertical columnar extraction process and a horizontal columnar extraction process (described later) to extract columnar voxels Bp that cannot be extracted by the above-described general columnar extraction process. In the vertical columnar extraction process, the server device 2 selects, as candidate voxels, voxels whose direction of the first principal component and the z-axis form an angle of approximately 0° or approximately 180°. In other words, the server device 2 selects, as candidate voxels, voxels whose direction indicated by the eigenvector corresponding to the first principal component approximately coincides with the vertical direction.
[0083] Generally, the direction of the first principal component of the measurement point cloud of a vertical column is perpendicular to the ground surface and coincides with the vertical direction. Therefore, the server device 2 can suitably identify candidate voxels that are candidates for the voxels that constitute the vertical column, based on the eigenvector corresponding to the first principal component.
[0084] Furthermore, for each selected candidate voxel, the server device 2 determines whether other candidate voxels exist among the neighboring surrounding voxels (see FIG. 6(B)). If other candidate voxels exist, the server device 2 regards the target candidate voxel (and the other candidate voxels) as a columnar voxel Bp. In general, vertical columns are expected to exist across multiple voxels. Therefore, even if the server device 2 mistakenly selects a voxel without a vertical columnar column as a candidate voxel, it can appropriately select a columnar voxel Bp based on the presence or absence of other neighboring candidate voxels.
[0085] (3-3) Horizontal column extraction processing In the horizontal column extraction process, the server device 2 selects as candidate voxels voxels whose direction indicated by the eigenvector corresponding to the first principal component substantially coincides with the horizontal direction. Generally, horizontal columns extend horizontally, so the direction of the first principal component of the measurement point cloud forming the horizontal column substantially coincides with the horizontal direction. Therefore, the server device 2 can suitably identify candidate voxels that are candidates for voxels constituting the horizontal column based on the eigenvector corresponding to the first principal component.
[0086] 9(A) shows a schematic diagram of the distribution of the measurement points in a voxel including a horizontal columnar body. As shown in FIG. 9(A), in this case, the angle between the direction of the first principal component and the z-axis is approximately 90°. In other words, the direction indicated by the eigenvector corresponding to the first principal component is approximately the same as the horizontal direction. Therefore, the server device 2 selects the voxel shown in FIG. 9(A) as a candidate voxel.
[0087] In addition, for each selected candidate voxel, the server device 2 determines whether or not there are other candidate voxels in the surrounding voxels whose first principal component has the same orientation or a 180° different orientation, and if there are such other candidate voxels, the target candidate vector (and such other candidate voxels) are regarded as columnar voxels Bp.
[0088] 9(B) shows an example of the arrangement of adjacent candidate voxels. For each selected candidate voxel, the server device 2 determines whether there are other candidate voxels whose first principal component has the same orientation or a 180° different orientation within the surrounding voxels in a cubic region having a size of three voxels in length, width, and height centered on the selected candidate voxel. In the example of FIG. 9(B), other candidate voxels whose first principal component has substantially the same orientation or a 180° different orientation exist adjacent to the selected candidate voxel in the x-axis direction. Therefore, the server device 2 regards these candidate voxels as columnar voxels Bp. In general, horizontal columns are expected to exist across multiple voxels, and the horizontal columns within each voxel extend in the same direction. Therefore, by selecting the columnar voxel Bp based on the above-mentioned judgment, the server device 2 can accurately select the columnar voxel Bp even if it erroneously selects a voxel that does not have a horizontal columnar body as a candidate voxel.
[0089] As described above, the server device 2 according to this embodiment calculates, for each voxel, which is a region obtained by dividing a space, the principal components of the measurement point cloud of the surface of an object measured by a measurement device such as the lidar 30, which is included in the voxel. Then, based on the results of the principal component analysis, the server device 2 determines planar voxels Bf, where the measurement point cloud forms a plane. Furthermore, based on the results of the principal component analysis, the server device 2 determines columnar voxels Bp, where the measurement point cloud forms a column. Then, the server device 2 determines voxels that include the measurement point cloud but do not fall into either the planar voxels Bf or the columnar voxels Bp, as vegetation voxels Bv, which are voxels that include vegetation. This allows the server device 2 to accurately identify vegetation voxels Bv and appropriately set weighting values and vegetation flags for the voxel data.
[0090] [Variations] Modifications suitable for the embodiment will be described below. The following modifications may be applied to the embodiment in combination.
[0091] (Variation 1) The vehicle-mounted device 1 may execute the vegetation determination process instead of the server device 2. In this case, the vehicle-mounted device 1 determines the vegetation voxels Bv by, for example, executing the process of step S101 in FIG. 4 and the vegetation determination process shown in FIG. 5 on point cloud data obtained by converting the measurement points output by the lidar 30 into an absolute coordinate system. Then, the vehicle-mounted device 1 includes information on the determined vegetation voxels Bv in the measurement data D1 and transmits the data to the server device 2. In this case, the server device 2 can generate and update weighting values and vegetation flags for the voxel data based on the measurement data D1 received from the vehicle-mounted device 1. In this modification, the vehicle-mounted device 1 is an example of the "determination device" of the present invention.
[0092] In yet another example, the vehicle-mounted device 1 may execute the entire voxel data generation process shown in Fig. 4 instead of the server device 2. In this case, the vehicle-mounted device 1 first determines vegetation voxels Bv by executing the process of step S101 in Fig. 4 and the vegetation determination process shown in Fig. 5 on point cloud data obtained by converting measurement points output by the LIDAR 30 into an absolute coordinate system. Then, based on the determination results of the vegetation determination process, the vehicle-mounted device 1 generates and updates weighting values and vegetation flags for the voxel data, which is a process corresponding to step S103 in Fig. 4.
[0093] (Variation 2) The voxel data is not limited to a data structure including a mean vector and a covariance matrix as shown in Fig. 3. For example, the voxel data may include point cloud data obtained by converting measurement data of a measurement and maintenance vehicle used to calculate the mean vector and covariance matrix into an absolute coordinate system. In this case, the on-board device 1 may estimate the vehicle position by applying other scan matching such as ICP (Iterative Closest Point) rather than by NDT scan matching.
[0094] (Variation 3) The vehicle may have a built-in function corresponding to the on-board device 1. In this case, an electronic control unit (ECU) of the vehicle executes a program stored in the memory of the vehicle to perform processing corresponding to that of the control unit 15 of the on-board device 1. [Explanation of symbols]
[0095] 1 On-vehicle device 2. Server device 10 Map DB 23 Distribution map DB 24 Measurement point cloud DB 11, 21 Communications Department 12, 22 Storage section 15, 25 Control section 13 Sensor section 14 Input section 16 Output section
Claims
1. a calculation means for calculating, for each region obtained by dividing the space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in one region; a first determination means for determining a first region, which is the region where the measurement point cloud forms a predetermined shape, based on the calculation result of the calculation means; a third determination means for determining an area including the measurement point cloud and not corresponding to the first area as a third area including vegetation; A determination device having the above.
2. The determination device according to claim 1 , wherein the first determination means determines the first region based on a variance of a third principal component of the measurement point cloud for each of the regions.
3. a second determination means for determining a second region, which is the region where the measurement point cloud forms a columnar body, based on the calculation result of the calculation means; the second determination means determines the second region based on a contribution rate and a variance of a first principal component of the measurement point cloud for each region; The determination device according to claim 1 or 2, wherein the third determination means determines, as the third region, a region that includes the measurement point cloud and does not correspond to either the first region or the second region.
4. 4. The determination device according to claim 1, wherein the first determination means determines the region in which the direction of the third principal component substantially coincides with the vertical direction as the first region.
5. 5. The determination device according to claim 1, wherein the first determination means determines, as the first region, the region in which the direction of the third principal component substantially coincides with the horizontal direction.
6. 6. The determination device according to claim 5, wherein the first determination means determines, as the first region, a region in which the direction of the third principal component substantially coincides with the horizontal direction and which is adjacent to a region in which the direction of the third principal component substantially coincides with or is substantially 180° different from the region in question.
7. a second determination means for determining a second region, which is the region where the measurement point cloud forms a columnar body, based on the calculation result of the calculation means; the second determination means determines, as the second region, a region in which a direction of a first principal component of the measurement point cloud for each region substantially coincides with a vertical direction; The determination device according to any one of claims 1 to 6, wherein the third determination means determines an area that includes the measurement point cloud and does not correspond to either the first area or the second area as the third area.
8. a second determination means for determining a second region, which is the region where the measurement point cloud forms a columnar body, based on the calculation result of the calculation means; the second determination means determines, as the second region, a region in which a direction of a first principal component of the measurement point cloud for each region substantially coincides with a horizontal direction; The determination device according to any one of claims 1 to 7, wherein the third determination means determines an area that includes the measurement point cloud and does not correspond to either the first area or the second area as the third area.
9. 9. The determination device according to claim 8, wherein the second determination means determines, as the second region, a region in which a direction of the first principal component substantially coincides with a horizontal direction and which is adjacent to a region in which a direction of the first principal component substantially coincides with or differs by substantially 180° from the region in question.
10. a second determination means for determining a second region, which is the region where the measurement point cloud forms a columnar body, based on the calculation result of the calculation means; the first determination means determines one first candidate area as the first area when another first candidate area is adjacent to one of the plurality of first candidate areas that are candidates for the first area determined based on the calculation result of the calculation means; the second determination means determines one second candidate area as the second area when another second candidate area is adjacent to one second candidate area among a plurality of second candidate areas that are candidates for the second area determined based on the calculation result of the calculation means; The determination device according to any one of claims 1 to 9, wherein the third determination means determines, as the third area, an area that includes the measurement point cloud and does not correspond to either the first area or the second area.
11. A method executed by a determination device, For each region obtained by dividing the space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in one region is calculated; determining a first region, which is the region in which the measurement point cloud forms a predetermined shape, based on the calculation result of the calculation means; A method for determining an area that includes the measurement point cloud and does not correspond to the first area as a third area that includes vegetation.
12. For each region obtained by dividing the space, a principal component of a measurement point cloud on the surface of an object measured by a measurement device included in one region is calculated; determining a first region, which is the region in which the measurement point cloud forms a predetermined shape, based on the calculation result of the calculation means; A program that causes a computer to execute a process of determining an area that includes the measurement point cloud and does not correspond to the first area as a third area that includes vegetation.
13. A storage medium storing the program according to claim 12.
Citation Information
Patent Citations
Information processing device, program, and map data updating system
JP2016180980A