Information processing device, information processing method, program, and storage medium
The information processing apparatus enhances vehicle position estimation by calculating a reliability index based on the ratio of associated measurement points, addressing local solution issues and improving accuracy under occlusion.
Patent Information
- Application Number
- JP2025051131
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2019-12-04
- Filing Date
- 2025-03-26
- Publication Date
- 2025-06-12
- Estimated Expiration
- 2040-12-03
AI Technical Summary
Existing position estimation techniques for vehicles, which involve matching voxel data with lidar point cloud data, often fall into local solutions due to limited search ranges and may not accurately represent the reliability of the estimated position, especially under occlusion conditions.
An information processing apparatus that acquires point cloud data, correlates measurement points with unit regions, estimates the position of a moving body, and calculates a reliability index using the ratio of associated measurement points to total measurement points, thereby improving the accuracy of position estimation and representing reliability effectively.
The proposed solution effectively calculates a reliability index that accurately represents the reliability of the estimated position, reducing the likelihood of local solutions and improving estimation accuracy even under occlusion conditions.
Smart Images

Figure 2025089485000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the calculation of a reliability index used in position estimation.
Background Art
[0002] Conventionally, there has been known a technique for estimating the self-position of a vehicle by collating (matching) shape data of surrounding objects measured using a measuring device such as a laser scanner with map information in which the shapes of the surrounding objects are stored in advance. For example, Patent Document 1 discloses an autonomous mobile system that determines whether a detected object in a voxel obtained by dividing space according to a predetermined rule is a stationary object or a moving object, and performs matching between map information and measurement data for voxels in which stationary objects exist. Further, Patent Document 2 discloses a scan matching method for estimating the position of the host vehicle by collating voxel data including the average vector and covariance matrix of stationary objects for each voxel with point cloud data output by a lidar.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0004] When estimating the position of the host vehicle by matching voxel data with the point cloud data output by the lidar, a process is performed to search for an estimation parameter that maximizes the score value indicating the degree of the matching. Since this search process is performed with the search range limited so that it can be completed within a predetermined processing time, there is a possibility of falling into a local solution even if the score value is the maximum. Also, even when occlusion by other vehicles occurs with respect to the object to be measured, the above-described score value may not deteriorate much, and in such a case, there is a possibility that the accurate estimation parameter has not been calculated. As described above, the above-described score value may be insufficient as an index representing the reliability of the estimated position.
[0005] The present invention has been made to solve the above-described problems, and a main object thereof is to provide an information processing apparatus capable of calculating an index that suitably represents the reliability of the estimated position.
Means for Solving the Problems
[0006] The invention according to the claim is an information processing apparatus, comprising: an acquisition unit that acquires point cloud data output by a measurement device; a correlation unit that correlates each measurement point constituting the point cloud data with each of the unit regions by matching the point cloud data with position information of an object for each unit region that divides the space; a position estimation unit that estimates the position of a moving body including the measurement device based on a measurement point associated with any of the unit regions and the position information of the object in the unit region; and a calculation unit that calculates a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit region to the number of measurement points of the point cloud data.
[0007] The invention according to the claims is an information processing method, which acquires point cloud data output by a measuring device, performs association between the measuring points constituting the point cloud data and each of the unit regions by collating the point cloud data with the position information of an object for each unit region that divides the space, estimates the position of a moving body equipped with the measuring device based on the measuring points associated with any of the unit regions and the position information of the object in the unit region, and calculates a reliability index of the position obtained by the position estimation using the ratio of the number of measuring points associated with the unit region to the number of measuring points in the point cloud data.
[0008] The invention according to the claims is a program that causes a computer to function as an acquisition unit that acquires point cloud data output by a measuring device, an association unit that performs association between the measuring points constituting the point cloud data and each of the unit regions by collating the point cloud data with the position information of an object for each unit region that divides the space, a position estimation unit that estimates the position of a moving body equipped with the measuring device based on the measuring points associated with any of the unit regions and the position information of the object in the unit region, and a calculation unit that calculates a reliability index of the position obtained by the position estimation using the ratio of the number of measuring points associated with the unit region to the number of measuring points in the point cloud data.
Brief Description of the Drawings
[0009]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Mode for Carrying Out the Invention
[0010] According to a preferred embodiment of the present invention, the information processing apparatus includes an acquisition unit that acquires point cloud data output by a measurement device, a correlation unit that correlates each of the measurement points constituting the point cloud data with each of the unit regions by collating the point cloud data with the position information of an object for each unit region that divides the space, a position estimation unit that estimates the position of a moving body including the measurement device based on the measurement points associated with any of the unit regions and the position information of the object in the unit region, and a calculation unit that calculates a reliability index of the position obtained by the position estimation using the ratio of the number of measurement points associated with the unit region to the number of measurement points in the point cloud data.
[0011] When performing position estimation by associating the point cloud data output by the measurement device with the position information of the object for each unit area, it is presumed that the higher the ratio of the number of measurement points that can be associated with the position information of the object among the measured measurement points, the higher the reliability of the estimated position. Therefore, in this aspect, when the information processing device performs position estimation based on the association between the point cloud data and the position information of the object for each unit area, it can suitably calculate a reliability index that accurately represents the reliability of the estimated position.
[0012] In one aspect of the information processing device, the position estimation unit determines whether re-execution of the position estimation is necessary based on the reliability index. According to this aspect, the information processing device can accurately determine the necessity of re-executing the position estimation.
[0013] In another aspect of the information processing device, the position estimation unit performs the position estimation by searching for estimation parameters related to the position of the moving object within a predetermined search range, and the position estimation unit determines the search range for re-executing the position estimation based on the value of the estimation parameters obtained by the previous position estimation. According to this aspect, the information processing device can re-execute the position estimation while suitably varying the search range and suitably search for the optimal solution of the estimation parameters.
[0014] In another aspect of the information processing device, the position estimation unit repeatedly executes the position estimation until at least one of the conditions that the reliability index becomes equal to or greater than a predetermined threshold value, the fluctuation of the reliability index stops, or the number of executions of the position estimation reaches a predetermined upper limit number of times is satisfied. According to this aspect, the information processing device can repeatedly execute the position estimation the necessary number of times.
[0015] In another aspect of the information processing device, the position estimation unit determines the upper limit number based on the moving speed of the moving object. According to this aspect, the information processing device can suitably determine the upper limit of the number of executions of the position estimation.
[0016] In another aspect of the information processing apparatus, the position estimation unit performs the position estimation by searching for estimation parameters related to the position of the moving object within a predetermined search range, and the position estimation unit performs the position estimation using the search range determined based on the value of the estimation parameters obtained by the previous position estimation for a number of times determined based on the reliability index. Also according to this aspect, the information processing apparatus can perform the position estimation the necessary number of times based on the reliability index.
[0017] In another aspect of the information processing apparatus, the position estimation unit calculates the reliability index based on the degree of matching in the position estimation between the measurement point associated with any one of the unit regions and the position information of the object in the unit region, and the ratio. According to this aspect, the information processing apparatus can suitably calculate a reliability index that accurately reflects the reliability of the estimated position.
[0018] According to another preferred embodiment of the present invention, there is provided a control method executed by an information processing apparatus, the method including: acquiring point cloud data output by a measurement device; associating each measurement point constituting the point cloud data with each of the unit regions by collating the point cloud data with the position information of an object for each unit region that divides space; estimating the position of a moving object provided with the measurement device based on the measurement point associated with any one of the unit regions and the position information of the object in the unit region; and calculating a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit region to the total number of measurement points in the point cloud data. By executing this control method, when the information processing apparatus performs position estimation based on the association between the point cloud data and the position information of the object for each unit region, the information processing apparatus can suitably calculate a reliability index that accurately represents the reliability of the estimated position.
[0019] According to still another preferred embodiment of the present invention, the program causes a computer to function as an acquisition unit that acquires point cloud data output by a measurement device, a matching unit that matches each measurement point constituting the point cloud data with each of the unit regions by collating the point cloud data with position information of an object for each unit region that divides space, a position estimation unit that estimates the position of a moving body including the measurement device based on a measurement point associated with any of the unit regions and the position information of the object in the unit region, and a calculation unit that calculates a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit region among the measurement points to the number of measurement points of the point cloud data. By executing this program, the computer can suitably calculate a reliability index that accurately represents the reliability of the estimated position when performing position estimation based on the association between the point cloud data and the position information of the object for each unit region. Preferably, the above program is stored in a storage medium.
Example
[0020] Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. In this specification, for the sake of convenience, a character with "^" or "-" attached to any symbol is represented as "A" ^ " or "A" - " ("A" is an arbitrary character).
[0021] (1) Overview of the driving support system FIG. 1 shows a schematic configuration of a driving support system according to this embodiment. The driving support system includes an in-vehicle device 1 that moves together with a vehicle as a moving body, a lidar (Light Detection and Ranging, or Laser Illuminated Detection And Ranging) 2, a gyro sensor 3, a vehicle speed sensor 4, and a GPS receiver 5.
[0022] The in-vehicle device 1 is electrically connected to the lidar 2, gyro sensor 3, vehicle speed sensor 4, and GPS receiver 5, and based on their outputs, estimates the position of the vehicle (also referred to as the "own vehicle position") in which the in-vehicle device 1 is installed. Then, based on the estimated result of the own vehicle position, the in-vehicle device 1 performs automatic driving control of the vehicle, such as traveling along the set route to the destination. The in-vehicle device 1 stores a map database (DB: DataBase) 10 including voxel data "VD". The voxel data VD is data that records position information of stationary structures for each voxel indicating a cube (regular lattice) that is the minimum unit in three-dimensional space. The voxel data VD includes data representing the measured point cloud data of the stationary structures in each voxel by a normal distribution, and is used for scan matching using NDT (Normal Distributions Transform) as described later. Further, the in-vehicle device 1 estimates the position and yaw angle of the vehicle on a plane by NDT scan matching, and based on the voxel data VD, estimates at least one of the height position of the vehicle and the pitch angle and roll angle.
[0023] The lidar 2 discretely measures the distance to an object existing in the external world by emitting a pulsed laser within a predetermined angular range in the horizontal and vertical directions, and generates three-dimensional point cloud data indicating the position of the object. In this case, the lidar 2 includes an irradiation unit that irradiates laser light while changing the irradiation direction, a light receiving unit that receives the reflected light (scattered light) of the irradiated laser light, and an output unit that outputs scan data (points constituting the point cloud data, hereinafter referred to as "measurement points") based on the light reception signal output by the light receiving unit. The measurement points are 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 specified based on the above-described light reception signal. Generally, the accuracy of the distance measurement value of the lidar is higher as the distance to the object is closer, and lower as the distance is farther. The lidar 2, gyro sensor 3, vehicle speed sensor 4, and GPS receiver 5 each supply output data to the in-vehicle device 1.
[0024] The in-vehicle device 1 is an example of the "information processing device" in the present invention, and the rider 2 is an example of the "measurement device" in the present invention. Note that the driving support system may have an inertial measurement unit (IMU) that measures the acceleration and angular velocity of the measurement vehicle in the three-axis directions instead of or in addition to the gyro sensor 3.
[0025] (2) Configuration of in-vehicle unit FIG. 2 is a block diagram showing the functional configuration of the in-vehicle device 1. The in-vehicle device 1 mainly includes an interface 11, a storage unit 12, a communication unit 13, an input unit 14, a control unit 15, and an information output unit 16. These elements are interconnected via a bus line.
[0026] The interface 11 acquires output data from sensors such as the rider 2, the gyro sensor 3, the vehicle speed sensor 4, and the GPS receiver 5, and supplies it to the control unit 15. Further, the interface 11 supplies a signal related to the driving control of the vehicle generated by the control unit 15 to the electronic control unit (ECU) of the vehicle.
[0027] The storage unit 12 stores programs executed by the control unit 15 and information necessary for the control unit 15 to execute predetermined processes. In this embodiment, the storage unit 12 stores a map DB10 including voxel data VD. Note that the map DB10 may be updated periodically. In this case, for example, the control unit 15 receives partial map information related to the area to which the own vehicle position belongs from a server device that manages map information via the communication unit 13, and reflects it in the map DB10. Note that the storage unit 12 does not necessarily store the map DB10. In this case, for example, the control unit 15 communicates with a server device that stores map data including voxel data VD via the communication unit 13 to acquire information necessary for the own vehicle position estimation process and the like at the necessary timing.
[0028] The input unit 14 includes buttons, touch panels, remote controllers, voice input devices, etc. that are operated by the user, and accepts inputs such as specifying a destination for route search and specifying on and off of automatic driving. The information output unit 16 is, for example, a display, a speaker, etc. that outputs based on the control of the control unit 15.
[0029] The control unit 15 includes a CPU that executes a program, etc., and controls the entire in-vehicle device 1. In this embodiment, the control unit 15 has a host vehicle position estimation unit 18. The control unit 15 is an example of the "acquisition unit", "association unit", "position estimation unit", "calculation unit", and "computer" that executes a program in the present invention.
[0030] The host vehicle position estimation unit 18 estimates the host vehicle position by performing scan matching based on NDT (NDT scan matching) based on the point cloud data output from the lidar 2 and the voxel data VD corresponding to the voxel to which the point cloud data belongs. In addition, the host vehicle position estimation unit 18 calculates a reliability index for the result of the NDT scan matching, and repeatedly executes the NDT scan matching in the host vehicle position estimation at the same time based on the reliability index. This reliability index will be described later.
[0031] (3) Position estimation based on NDT scan matching FIG. 3 is a diagram showing the host vehicle position to be estimated by the host vehicle position estimation unit 18 in a two-dimensional orthogonal coordinate system. As shown in FIG. 3, the host vehicle position on the plane defined on the two-dimensional orthogonal coordinates of xy is represented by the coordinates "(x, y)" and the azimuth (yaw angle) "ψ" of the host vehicle. Here, the yaw angle ψ is defined as the angle formed by the traveling direction of the vehicle and the x-axis. The coordinates (x, y) are, for example, absolute positions corresponding to a combination of latitude and longitude, or world coordinates indicating a position with a predetermined point as the origin. And the host vehicle position estimation unit 18 performs host vehicle position estimation using these x, y, and ψ as estimation parameters. Note that the host vehicle position estimation unit 18 may perform host vehicle position estimation by further using at least one of the height position, pitch angle, and roll angle of the vehicle in a three-dimensional orthogonal coordinate system as an estimation parameter in addition to x, y, and ψ.
[0032] Next, the voxel data VD used for NDT scan matching will be described. The voxel data VD includes data representing the measured point cloud data of static structures in each voxel by a normal distribution.
[0033] FIG. 4 shows an example of a schematic data structure of the voxel data VD. The voxel data VD includes information on parameters when expressing the point cloud in the voxel by a normal distribution. In this embodiment, as shown in FIG. 4, it includes a voxel ID, voxel coordinates, a mean vector, and a covariance matrix.
[0034] The "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 determined in advance, it is possible to specify the space of each voxel by the voxel coordinates. The voxel coordinates may be used as the voxel ID.
[0035] The "mean vector" and "covariance matrix" indicate the mean vector and covariance matrix corresponding to the parameters when expressing the point cloud in the target voxel by a normal distribution. Let the coordinates of an arbitrary point "i" in an arbitrary voxel "n" be X n (i)=[x n (i), y n (i), z n (i)] T defined as, and if the number of point clouds in voxel n is "N n ", then the mean vector "μ n " and covariance matrix "V n " in voxel n are represented by the following equations (1) and (2), respectively.
[0036]
Equation
[0037]
Equation
[0038] Next, an overview of NDT scan matching using voxel data VD will be described.
[0039] Scan matching by NDT assuming a vehicle estimates the estimation parameter P = [t x , t y , t ψ T Here, "t x " indicates the movement amount in the x direction, "t y " indicates the movement amount in the y direction, and "t ψ " indicates the yaw angle.
[0040] Also, for the point cloud data obtained by the lidar 2, correspondence with the voxels to be matched is performed, and the coordinates of an arbitrary point at the corresponding voxel n are X L (j) = [x n (j), y n (j), z n (j)] T Then, the average value "L´ L " of X n (j) at the voxel n is expressed by the following formula (3).
[0041]
Equation
[0042]
Equation
[0043]
Equation
[0044] Then, the in-vehicle device 1 calculates the comprehensive evaluation function value (also referred to as the "score value") "E(k)" for all voxels to be matched, which is represented by the following equation (6).
[0045]
Equation
[0046]
Equation
[0047] FIG. 5 is an example of the functional block of the host vehicle position estimation unit 18. As shown in FIG. 5, the host vehicle position estimation unit 18 includes a dead reckoning block 21, a position prediction block 22, a coordinate conversion block 23, a point cloud data association block 24, and a position correction block 25.
[0048] The dead reckoning block 21 uses the moving speed and angular velocity of the vehicle based on the outputs of the gyro sensor 3, the vehicle speed sensor 4, the GPS receiver 5, etc., and obtains the moving distance and azimuth change from the previous time. The position prediction block 22 adds the obtained moving distance and azimuth change to the estimated host vehicle position X ^ (k - 1) calculated in the immediately preceding measurement update step to calculate the predicted host vehicle position X - (k) at time k.
[0049] The coordinate conversion block 23 converts the point cloud data output from the lidar 2 into the world coordinate system, which is the same coordinate system as the map DB 10. In this case, the coordinate conversion block 23 performs coordinate conversion of the point cloud data output by the lidar 2 at time k based on, for example, the predicted host vehicle position output by the position prediction block 22 at time k.
[0050] The point cloud data association block 24 performs association between the point cloud data and the voxels by collating the point cloud data in the world coordinate system output by the coordinate conversion block 23 with the voxel data VD represented in the same world coordinate system. The position correction block 25 calculates an individual evaluation function value based on Equation (5) for each voxel associated with the point cloud data, and calculates an estimated parameter P that maximizes the score value E(k) based on Equation (6). Then, the position correction block 25 applies the estimated parameter P obtained at time k to the predicted host vehicle position X - (k) output by the position prediction block 22 to calculate the estimated host vehicle position X ^ (k).
[0051] (4) Calculation of reliability index of NDT scan matching Next, the calculation of the reliability index for the result of NDT scan matching will be described. Hereinafter, the number of measurement points constituting the point cloud data output by the lidar 2 at each time (i.e., obtained by one cycle of scanning) will also be referred to as the "number of measurement points Nt".
[0052] The host vehicle position estimation unit 18 calculates the number of measurement points Nt and the number of measurement points associated with the voxel data VD in the NDT scan matching (also referred to as the "number of corresponding measurement points Nc") for the point cloud data obtained at each time. Then, the host vehicle position estimation unit 18 calculates the ratio of the number of corresponding measurement points Nc to the number of measurement points Nt (also referred to as the "DAR" (Data Association Ratio)) as the reliability index in the NDT scan matching. That is, the host vehicle position estimation unit 18 calculates DAR according to the following formula. DAR = Nc / Nt
[0053] Here, a specific example of the calculation of DAR will be described with reference to FIGS. 6 and 7.
[0054] FIGS. 6 and 7 show overhead views of the periphery of the vehicle equipped with the in-vehicle device 1. In FIGS. 6 and 7, the voxels where the voxel data VD exists are indicated by rectangular frames, and the positions of the measurement points of the lidar 2 obtained by one cycle of scanning are indicated by dots. Here, FIG. 6 shows an example where the association between the measurement points by the point cloud data association block 24 and the voxel data VD is not accurately performed, and FIG. 7 shows an example where the association between the measurement points by the point cloud data association block 24 and the voxel data VD is accurately performed. In the example of FIG. 6, there are ground objects 50 to 52 around the vehicle on which the in-vehicle device 1 is mounted, and voxel data VD is provided in the voxels corresponding to the surface positions of the ground objects 50 to 52. In addition, there is a preceding vehicle 53 in front of the vehicle on which the in-vehicle device 1 is mounted, and the in-vehicle device 1 generates 26 measurement points for the ground objects 50 to 52 and the preceding vehicle 53 by one cycle of scanning by the lidar 2. In FIGS. 6 and 7, for the sake of convenience of explanation, at most one measurement point is associated with one voxel, but actually, a plurality of measurement points may be associated with one voxel.
[0055] Here, in the example of FIG. 6, there is a deviation in the association between the measurement points by the point cloud data association block 24 and the voxel data VD. In this case, there are two measurement points of the feature 50 associated with the voxel data VD, four measurement points of the feature 51 associated with the voxel data VD, and five measurement points of the feature 52 associated with the voxel data VD. Therefore, in this case, since the number of corresponding measurement points Nc is 11 and the number of measurement points Nt is 26, the vehicle position estimation unit 18 determines that the DAR is approximately 0.423 (≈11 / 26).
[0056] On the other hand, in the example of FIG. 7, the association between the measurement points by the point cloud data association block 24 and the voxel data VD is accurately performed. And in this case, there are seven measurement points of the feature 50 associated with the voxel data VD, eight measurement points of the feature 51 associated with the voxel data VD, and eight measurement points of the feature 52 associated with the voxel data VD. Therefore, in this case, since the number of corresponding measurement points Nc is 23 and the number of measurement points Nt is 26, the vehicle position estimation unit 18 determines that the DAR is approximately 0.885 (≈23 / 26).
[0057] As described above, the DAR becomes a low value when the association between the measurement points by the point cloud data association block 24 and the voxel data VD is insufficient (a deviation occurs), and becomes a high value when the association between the measurement points by the point cloud data association block 24 and the voxel data VD is sufficiently performed (no deviation occurs). Therefore, the vehicle position estimation unit 18 can obtain an index that accurately reflects the reliability of the calculated estimation parameter P by calculating the DAR.
[0058] Here, a supplementary explanation will be given regarding the specific procedure for associating the measurement points with the voxel data VD.
[0059] FIG. 8 shows the positional relationship between the voxels “Vo1” to “Vo6” where voxel data VD exists on the two-dimensional x-y plane in the world coordinate system and the measurement points 61 to 65 indicating positions in the vicinity of these voxels. Here, for convenience of explanation, it is assumed that the z coordinate in the world coordinate system of the center positions of the voxels Vo1 to Vo6 is the same as the z coordinate in the world coordinate system of the measurement points 61 to 65.
[0060] First, the coordinate conversion block 23 converts the point cloud data including the measurement points 61 to 65 output by the lidar 2 into the world coordinate system. Then, the point cloud data association block 24 performs rounding processing such as the fractional part of the measurement points 61 to 65 in the world coordinate system. In the example of FIG. 8, since the size of each voxel, which is a cube, is 1 m, the point cloud data association block 24 rounds off the decimal part of each of the x, y, and z coordinates of each measurement point 61 to 65.
[0061] Next, the point cloud data association block 24 determines the voxels corresponding to each measurement point 61 to 65 by collating the voxel data VD corresponding to the voxels Vo1 to Vo6 with the coordinates of each measurement point 61 to 65. In the example of FIG. 8, since the (x, y) coordinates of the measurement point 61 become (2, 1) by the above-mentioned rounding, the point cloud data association block 24 associates the measurement point 61 with the voxel Vo1. Similarly, since the (x, y) coordinates of the measurement point 62 and the measurement point 63 become (3, 2) by the above-mentioned rounding, the point cloud data association block 24 associates the measurement point 62 and the measurement point 63 with the voxel Vo5. Also, since the (x, y) coordinates of the measurement point 64 become (2, 3) by the above-mentioned rounding, the point cloud data association block 24 associates the measurement point 64 with the voxel Vo6. On the other hand, since the (x, y) coordinates of the measurement point 65 become (4, 1) by the above-mentioned rounding, the point cloud data association block 24 determines that there is no voxel data VD corresponding to the measurement point 65. Then, the position correction block 25 estimates the estimation parameter P using the measurement points associated by the point cloud data association block 24 and the voxel data VD.
[0062] (5) Estimation of own vehicle position using DAR Next, the vehicle position estimation process using the DAR will be described.
[0063] (5-1) Overview When the DAR is lower than a predetermined threshold value at each time when the host vehicle position estimation unit 18 performs host vehicle position estimation, the host vehicle position estimation unit 18 determines that the estimation parameter P may be a local solution, and performs re-search of the estimation parameter P with the calculated designated parameter P as the initial value. In this way, the host vehicle position estimation unit 18 preferably calculates the estimation parameter P that is the optimal solution at each time by determining whether to execute re-search of the estimation parameter P based on the DAR.
[0064] Figs. 9(A) to (D) are graphs showing the relationship between the value of the estimation parameter P and the score value. Here, for convenience of explanation, the estimation parameter P is represented as a one-dimensional value. Here, Figs. 9(A) to (D) respectively show the first to fourth search results obtained when a predetermined search range is set for the estimation parameter P at the target processing time and the initial value at the start of the search. Further, Figs. 10(A) to (D) are diagrams conceptually showing the correspondence between the measurement points in the world coordinate system to which the initial values and search results of the estimation parameter P shown in Figs. 9(A) to (D) are respectively applied and the actual positions of the measured ground features. In Figs. 10(A) to (D), for convenience of explanation, the positions of the stationary structures including the ground feature 71 and the ground feature 72 registered in the voxel data VD are shown by solid lines, the positions of the voxels where each voxel data VD exists are shown by broken line frames, and the measurement points are shown by dots.
[0065] Here, in the estimation process of the first estimated parameter P shown in FIG. 9(A), the host vehicle position estimation unit 18 sets a value range with a predetermined width centered on a predetermined initial value "v0" (for example, 0) as the search range for the estimated parameter P, and searches for the estimated parameter P that maximizes the score value (i.e., the evaluation function value E) within the search range. And in this case, the host vehicle position estimation unit 18 recognizes the value "v1" of the estimated parameter P with the highest score value within the set search range as the search result. Further, the host vehicle position estimation unit 18 calculates the DAR by counting the corresponding measurement point number Nc according to the procedure described with reference to FIG. 8 for the point cloud data in the world coordinate system reflecting the search result v1. In this case, as shown in FIG. 10(A), since the measurement point number Nt is 21 and the corresponding measurement point number Nc, which is the number of points on the solid line, is 11, the host vehicle position estimation unit 18 determines that the DAR is approximately 0.524 (≒11 / 21).
[0066] Then, the host vehicle position estimation unit 18 determines whether the calculated DAR is equal to or greater than a predetermined threshold value (here, "0.8"). The above-mentioned threshold value is set to, for example, the lower limit value of the DAR estimated that the estimated parameter P is the optimal solution, and is stored in the storage unit 12 or the like in advance. And in the example of FIG. 9(A), since the calculated DAR (approximately 0.524) is less than the threshold value, the host vehicle position estimation unit 18 determines that the calculated estimated parameter P has fallen into a local solution, or that occlusion by a moving object such as another vehicle has occurred for the feature to be measured. Therefore, in this case, the host vehicle position estimation unit 18 executes again the search process of the estimated parameter P with the first search result as the initial value. As shown in FIG. 9(A), the optimal solution with the maximum score value is not included in the search range set in the first search, and the search result v1 is a local solution.
[0067] Next, the host vehicle position estimation unit 18 performs the estimation process of the second estimated parameter P with the estimated parameter P searched for the first time as the initial value and the width of the search range being the same as that of the first time. In this case, as shown in FIG. 9(B), the host vehicle position estimation unit 18 sets the initial value of the estimated parameter P to the same value v1 as the search result of the first time, and obtains the search result "v2" of the second estimated parameter P. And in this case, as shown in FIG. 10(B), since the number of measured points Nt is 21 while the corresponding number of measured points Nc is 13, the host vehicle position estimation unit 18 determines that the DAR is approximately 0.619 (≈13 / 21). Therefore, since the DAR is less than the threshold value, the host vehicle position estimation unit 18 performs the search process of the third estimated parameter P with the estimated parameter P obtained by the estimation process of the second estimated parameter P as the initial value. In this case, as shown in FIG. 9(C), the host vehicle position estimation unit 18 sets the initial value of the estimated parameter P to the same value v2 as the search result of the second time, and obtains the search result "v3" of the second estimated parameter P. And in this case, as shown in FIG. 10(C), since the number of measured points Nt is 21 while the corresponding number of measured points Nc is 21, the host vehicle position estimation unit 18 determines that the DAR is equal to or greater than the threshold value (1>0.8). Therefore, in this case, the host vehicle position estimation unit 18 determines that the latest estimated parameter P is not a local solution but an optimal solution.
[0068] Also, when performing the search process of the fourth estimated parameter P with the estimated parameter P searched for the third time as the initial value, as shown in FIG. 9(D), the initial value and the search result of the estimated parameter P become the same value v3, and as shown in FIG. 10(D), the DAR also remains unchanged at 1.
[0069] In this way, until the DAR becomes equal to or greater than a predetermined threshold value, the host vehicle position estimation unit 18 repeatedly executes a search process for the estimation parameter P with the estimation parameter P estimated immediately before as the initial value. As a result, the host vehicle position estimation unit 18 can suitably obtain the optimal solution of the estimation parameter P by repeatedly re-searching the estimation parameter P the necessary number of times while varying the search range of the estimation parameter P. Further, the host vehicle position estimation unit 18 can suitably suppress an increase in processing cost as compared with a process of expanding the width of the search range to search for the optimal solution of the estimation parameter P.
[0070] In the description using FIGS. 9 and 10, an example in which it is determined whether or not to re-search the estimation parameter P by comparing the DAR after reflecting the searched estimation parameter P in the point cloud data with the threshold value has been described. Instead of this, the host vehicle position estimation unit 18 may determine whether or not to re-search the estimation parameter P by comparing the DAR before reflecting the searched estimation parameter P in the point cloud data with the threshold value.
[0071] Further, preferably, instead of or in addition to setting that the DAR becomes equal to or greater than the threshold value as the end condition of the search for the estimation parameter P, the host vehicle position estimation unit 18 may set that the DAR does not change before and after the re-search of the estimation parameter P as the end condition of the search for the estimation parameter P. In this case, the host vehicle position estimation unit 18 executes again the search for the estimation parameter P with the estimation parameter P estimated immediately before as the initial value, and ends the search for the estimation parameter P when the DARs before and after the search are the same (that is, when the estimated estimation parameters P are the same). Also by this, the host vehicle position estimation unit 18 can suitably determine the optimal solution as the estimation parameter P.
[0072] In another preferred example, instead of or in addition to the end condition for searching the estimation parameters based on the DAR described above, the host vehicle position estimation unit 18 may define an end condition for searching the estimation parameter P based on the upper limit number of times of searching the estimation parameter P. For example, the host vehicle position estimation unit 18 preset the upper limit number of times of performing the estimation process of the estimation parameter P (also referred to as the "search upper limit number"), and when the number of times of the estimation process of the estimation parameter P reaches the search upper limit number, regardless of the DAR, the estimation process of the estimation parameter P is terminated. Thereby, it is possible to preferably prevent exceeding the processing time based on the preset time interval of the estimation process of the host vehicle position. A specific example of this process will be described with reference to FIG. 12.
[0073] Further, instead of determining the necessity of re-searching the estimation parameter P each time the host vehicle position estimation unit 18 performs a search for the estimation parameter P, the number of searches for the estimation parameter P may be determined based on the DAR before estimating the estimation parameter P. A specific example of this process will be described with reference to FIG. 13.
[0074] Here, a supplementary explanation will be given for the case where occlusion occurs.
[0075] FIG. 11 shows an overhead view of the periphery of the vehicle equipped with the in-vehicle unit 1 when the DAR does not reach the threshold due to occlusion. In the example of FIG. 11, occlusion of the ground object 50 occurs by the vehicle 53, and occlusion of the ground object 52 occurs by the vehicle 54. Therefore, in this case, it becomes 0.625 (= 15 / 24), and the DAR becomes below the threshold. Thus, due to occlusion, the number of measurement points associated with the voxel data VD decreases, and the DAR also decreases. On the other hand, when the DAR is thus decreased due to occlusion, unlike the case where the estimation parameter P has fallen into a local solution, even when the estimation process of the estimation parameter P is repeatedly performed, the obtained estimation parameter P and DAR do not fluctuate. Therefore, when the estimation parameter P and the DAR do not fluctuate while the DAR is less than the threshold, the host vehicle position estimation unit 18 determines that occlusion has occurred and terminates the search for the estimation parameter P.
[0076] (5-2) Processing Flow FIG. 12 is an example of a flowchart showing the procedure of a host vehicle position estimation process for determining whether to re-search the estimated parameter P based on the DAR each time the estimated parameter P is estimated. In the flowchart of FIG. 12, the host vehicle position estimation unit 18 repeatedly executes the search for the estimated parameter P until the DAR after reflecting the estimated parameter P reaches a threshold value or until the number of search times of the estimated parameter P reaches the upper limit of the search times.
[0077] First, the dead reckoning block 21 of the host vehicle position estimation unit 18 obtains the moving distance and azimuth change from the previous time using the moving speed and angular velocity of the vehicle based on the outputs of the gyro sensor 3, the vehicle speed sensor 4, the GPS receiver 5, etc. Thereby, the position prediction block 22 calculates the predicted host vehicle position at the current time from the estimated host vehicle position (which may include attitude angles such as yaw angle) obtained at one time before (the previous processing time) (step S11). Then, the host vehicle position estimation unit 18 sets a variable "n" representing the number of times the estimated parameter P has been searched to 1 (step S12).
[0078] Next, the coordinate conversion block 23 of the host vehicle position estimation unit 18 converts the point cloud data for one cycle scanned by the lidar 2 at the current processing time into data in the world coordinate system (step S13). In this case, the coordinate conversion block 23 converts, for example, the point cloud data indicating each of the three-dimensional positions based on the combination of the distance and the scan angle measured by the lidar 2 with respect to the lidar 2 into the vehicle coordinate system. The vehicle coordinate system is the coordinate system of the vehicle with the traveling direction and the lateral direction of the vehicle as axes. In this case, the coordinate conversion block 23 converts the point cloud data from the coordinate system with respect to the lidar 2 into the vehicle coordinate system based on the information on the installation position and the installation angle of the lidar 2 with respect to the vehicle. Then, the coordinate conversion block 23 converts the point cloud data converted into the vehicle coordinate system into the world coordinate system based on the predicted or estimated position x, y, yaw angle ψ, etc. of the vehicle. Note that the process of converting the point cloud data output by the lidar installed in the vehicle into the vehicle coordinate system and the process of converting from the vehicle coordinate system to the world coordinate system are disclosed, for example, in International Publication WO2019 / 188745 and the like.
[0079] Next, the point cloud data association block 24 associates the point cloud data converted into the world coordinate system with the voxels in which the voxel data VD exists (step S14). Then, the position correction block 25 of the host vehicle position estimation unit 18 performs NDT matching based on the associated point cloud data and the voxel data VD of the voxels, and calculates the estimated host vehicle position at the current time (including the attitude angle such as the yaw angle) (step S15). Further, the host vehicle position estimation unit 18 calculates the DAR by counting the number of measurement points Nt and the number of corresponding measurement points Nc (step S16).
[0080] Then, the host vehicle position estimation unit 18 determines whether the DAR calculated in step S16 is less than a predetermined threshold (step S17). And when the DAR is less than the threshold (step S17; Yes), the host vehicle position estimation unit 18 determines whether the variable n representing the number of times of searching for the estimation parameter P is less than the upper limit number of search times (step S18). And when the variable n representing the number of times of searching for the estimation parameter P is less than the upper limit number of search times (step S18; Yes), the host vehicle position estimation unit 18 adds 1 to the variable n (step S19). After that, the host vehicle position estimation unit 18 proceeds to step S13, and based on the host vehicle position calculated in step S15, it executes the coordinate transformation of the point cloud data to be processed at the current processing time into the world coordinate system again.
[0081] On the other hand, when the DAR is greater than or equal to the predetermined threshold (step S17; No), or when the variable n has reached the upper limit number of search times (step S18; No), the host vehicle position estimation unit 18 outputs the latest host vehicle position estimation result and DAR calculated in step S15 (step S20). In this case, the host vehicle position estimation unit 18 outputs the host vehicle position estimation result and DAR to a processing block or the like that performs driving assistance such as automatic driving in the control unit 15.
[0082] In this way, each time the host vehicle position estimation unit 18 estimates the estimation parameter P, it determines whether it is necessary to re-search for the estimation parameter P based on the DAR, so that it can execute the repetition of the search for the estimation parameter P only when necessary, and can avoid the unnecessary repetition of the search for the estimation parameter P. Thereby, the host vehicle position estimation unit 18 can preferably complete the host vehicle position estimation within a predetermined time.
[0083] FIG. 13 is an example of a flowchart showing the procedure of the host vehicle position estimation process for determining the number of times of searching for the estimation parameter P (also referred to as "search times N") based on the DAR. In the flowchart of FIG. 13, the host vehicle position estimation unit 18 sets the search times N according to the DAR calculated based on the association between the point cloud data of the lidar 2 after coordinate transformation based on the predicted host vehicle position before estimating the estimation parameter P and the voxel data VD.
[0084] First, similar to step S11 in FIG. 12, the dead reckoning block 21 and the position prediction block 22 of the host vehicle position estimation unit 18 calculate the predicted host vehicle position at the current time from the estimated host vehicle position obtained one time step before (step S21). Then, the host vehicle position estimation unit 18 sets a variable n representing the number of times the estimation parameter P has been searched to 1 (step S22). Next, similar to step S13 in FIG. 12, the coordinate conversion block 23 of the host vehicle position estimation unit 18 converts the point cloud data for one cycle scanned by the lidar 2 at the current processing time into data in the world coordinate system (step S23).
[0085] Next, the point cloud data association block 24 associates the point cloud data converted into the world coordinate system with the voxels in which the voxel data VD exists (step S24). Then, the position correction block 25 of the host vehicle position estimation unit 18 performs NDT matching based on the associated point cloud data and the voxel data VD of the voxels, and calculates the estimated host vehicle position at the current time (including attitude angles such as the yaw angle) (step S25). Also, the host vehicle position estimation unit 18 calculates the DAR by counting the number of measurement points Nt and the number of corresponding measurement points Nc (step S26). Then, the host vehicle position estimation unit 18 determines whether the variable n representing the number of times the estimation parameter P has been searched is 1 (step S27).
[0086] Then, when the variable n is 1 (step S27; Yes), the host vehicle position estimation unit 18 sets the number of search times N according to the DAR calculated in step S26 (step S28). At this time, preferably, the host vehicle position estimation unit 18 may set the number of search times N to be larger as the DAR is smaller. For example, the host vehicle position estimation unit 18 sets the number of search times N as follows. DAR < 0.5 ⇒ N = 40 0.5 ≤ DAR < 0.6 ⇒ N = 30 0.6 ≤ DAR < 0.7 ⇒ N = 20 0.7 ≤ DAR < 0.8 ⇒ N = 10 0.8 ≤ DAR ⇒ N = 5 As a result, when the point cloud data and the voxel data VD deviate significantly from each other and the DAR is small, the number of searches N increases, so that the reach to the optimal solution of the estimation parameter P becomes stable. On the other hand, when the variable n is not 1 (step S27; No), the in-vehicle position estimation unit 18 does not set the number of searches N.
[0087] Then, when the variable n representing the number of times the estimation parameter P has been searched is smaller than the number of searches N (step S29; Yes), the in-vehicle position estimation unit 18 increments the variable n by 1 (step S30) and returns the process to step S23. In this case, the in-vehicle position estimation unit 18 executes steps S23 to S26 to re-search the estimation parameter P and calculate the DAR.
[0088] On the other hand, when the variable n representing the number of times the estimation parameter P has been searched becomes equal to the number of searches N (step S29; No), the in-vehicle position estimation unit 18 outputs the latest in-vehicle position estimation result calculated in step S25 and the latest DAR calculated in step S26 (step S31). In this case, the in-vehicle position estimation unit 18 outputs the in-vehicle position estimation result and the DAR to a processing block or the like that performs driving support such as autonomous driving in the control unit 15.
[0089] As described above, the control unit 15 of the in-vehicle device 1 according to the present embodiment acquires the point cloud data output by the lidar 2. Then, the control unit 15 associates each of the measurement points constituting the point cloud data with each of the voxels by collating the acquired point cloud data with the voxel data VD, which is the position information of an object for each unit region (voxel) partitioning the space. The control unit 15 estimates the position of the moving body equipped with the lidar 2 based on the measurement point associated with any of the voxels in which the voxel data VD exists and the position information of the object in the unit region. The control unit 15 calculates a reliability index of the position obtained by the position estimation using the DAR, which is the ratio of the number of measurement points associated with any of the voxels to the number of measurement points of the point cloud data. According to this aspect, when the in-vehicle device 1 performs position estimation by collating the point cloud data output by the lidar 2 with the voxel data VD, it can suitably acquire an index that accurately represents the reliability of the estimated position.
[0090] (6) Modification example Hereinafter, modification examples suitable for the above-described embodiments will be described. The following modification examples may be applied to these embodiments in combination.
[0091] (Modification Example 1) The in-vehicle device 1 may determine the upper limit search count referred to in step S18 of the flowchart in FIG. 12 based on the moving speed of the vehicle.
[0092] In this case, the in-vehicle device 1 stores, in advance, for example, an expression or a map showing the correspondence between the moving speed of the vehicle and the upper limit search count, and refers to the above-described expression or map from the moving speed of the vehicle acquired from the vehicle speed sensor 4 or the like to set the upper limit search count. In this case, the in-vehicle device 1 preferably increases the upper limit search count as the moving speed of the vehicle decreases. For example, when the vehicle is stopped or moving at a low speed equivalent thereto, since there is no or little variation in the position of the host vehicle, there is little need to perform the host vehicle position estimation at predetermined intervals (for example, 100 ms) determined in advance. Therefore, the in-vehicle device 1 increases the upper limit search count as the moving speed of the vehicle decreases, and when the vehicle is stopped or moving at a low speed equivalent thereto, gives priority to calculating the optimal solution of the estimation parameter P rather than performing the host vehicle position estimation within a predetermined interval determined in advance. Thereby, the host vehicle position estimation accuracy when the vehicle is stopped or moving at a low speed can be preferably improved.
[0093] (Modification Example 2) Instead of using the DAR, the in-vehicle device 1 may use a value based on the DAR as a reliability index of the position obtained by the host vehicle position estimation. For example, the in-vehicle device 1 may use, as the above-described reliability index, a value obtained by multiplying the DAR and the score value (evaluation function value E).
[0094] Here, since the score value indicates the degree of matching of the point cloud data to the voxel data VD, when the optimal value has been obtained, both the DAR and the score value will be large. Therefore, the larger the product of both the DAR and the score value, the more it is estimated that the vehicle position has been sufficiently estimated. Considering the above, in this modification example, the in-vehicle device 1 regards the value obtained by multiplying the DAR and the score value as a reliability index, and determines whether it is necessary to re-search the estimation parameter P, etc. For example, in the example of FIG. 12, in step S17, the in-vehicle device 1 determines whether the value obtained by multiplying the DAR calculated in step S16 and the score value corresponding to the estimation parameter P calculated in step S15 is less than a predetermined threshold value. And when the above multiplication value is less than the threshold value (step S17; Yes), and the variable n has not reached the upper limit search count (step S18; Yes), the in-vehicle device 1 executes steps S19 and S13 to S16 to re-search the estimation parameter P and calculate the above multiplication value. Similarly, in the example of FIG. 13, in step S28, the in-vehicle device 1 sets the search count N based on the value obtained by multiplying the DAR calculated in step S26 and the score value for the estimation parameter P calculated in step S25.
[0095] (Modification Example 3) The configuration of the driving support system shown in FIG. 1 is an example, and the configuration of the driving support system to which the present invention is applicable is not limited to the configuration shown in FIG. 1. For example, instead of having the in-vehicle device 1, the electronic control unit of the vehicle may execute the process of the own vehicle position estimation unit 18 of the in-vehicle device 1. In this case, the map DB10 is stored, for example, in a storage unit in the vehicle or a server device that performs data communication with the vehicle, and the electronic control unit of the vehicle refers to this map DB10 to execute own vehicle position estimation based on NDT scan matching, etc.
[0096] (Modification Example 4) As shown in FIG. 3, the voxel data VD is not limited to a data structure including an average vector and a covariance matrix. For example, the voxel data VD may directly include the point cloud data measured by the measurement maintenance vehicle used when calculating the average vector and the covariance matrix.
[0097] (Modification Example 5) The method of determining the number of search times N of the estimated parameter P based on the DAR is not limited to the method based on the flowchart shown in FIG. 13. For example, the host vehicle position estimation unit 18 may hysteretically determine the number of search times N based on the DAR.
[0098] In this case, when the DAR deteriorates slightly, that is, when it is equal to or higher than the lower threshold value (also referred to as the "lower threshold value") for determining the deterioration of the position estimation accuracy with respect to the DAR, the host vehicle position estimation unit 18 regards it as deterioration caused by noise or occlusion, etc., and not as an essential deterioration, and does not change the number of search times N. On the other hand, when the DAR deteriorates significantly, that is, when the DAR is less than the lower threshold value, the host vehicle position estimation unit 18 increases the number of search times N. And in this case, the host vehicle position estimation unit 18 maintains the number of search times N at the increased value until the DAR becomes sufficiently good, that is, until it becomes equal to or higher than the upper threshold value (also referred to as the "upper threshold value") for determining the stabilization of the position estimation. After that, when the DAR becomes equal to or higher than the upper threshold value, the host vehicle position estimation unit 18 returns the number of search times N to the initial value. Thereby, while avoiding increasing the number of search times N more than necessary, it is possible to stabilize the position estimation when the position estimation accuracy deteriorates.
[0099] For example, when the host vehicle position estimation unit 18 sets the lower threshold value to "0.6" and the upper threshold value to "0.7", the number of search times N is set as follows. Initial value ⇒ N = 10 DAR < lower threshold value (0.6) ⇒ N = 20 DAR ≥ upper threshold value (0.7) ⇒ N = 10
[0100] In this case, first, the host vehicle position estimation unit 18 starts the host vehicle position estimation process with the search count N set to "10". Then, when the DAR once falls below 0.6 (lower threshold value), the host vehicle position estimation unit 18 increases the search count N to "20". After that, when the DAR exceeds 0.6 but is less than 0.7 (upper threshold value), the host vehicle position estimation unit 18 determines that the position estimation is not yet stable and keeps the search count N at "20". After that, when the DAR becomes 0.7 (upper threshold value) or more, the host vehicle position estimation unit 18 determines that the position estimation is stable and returns the search count N to the initial value of "10". After that, when the DAR is less than 0.7 but 0.6 or more, the host vehicle position estimation unit 18 determines that there may be an influence due to noise or occlusion and keeps the search count N at "N = 10".
[0101] FIG. 14 is an example of a flowchart showing the procedure of the host vehicle position estimation process according to Modification 5.
[0102] First, the dead reckoning block 21 and the position prediction block 22 of the host vehicle position estimation unit 18 calculate the predicted host vehicle position at the current time from the estimated host vehicle position obtained at the previous time, in the same manner as step S21 in FIG. 13 (step S41). Next, the host vehicle position estimation unit 18 reads the initial value of the search count N from a memory such as the storage unit 12 (step S42). Then, the host vehicle position estimation unit 18 sets a variable n representing the number of times the estimated parameter P has been searched to 1 (step S43). Next, the coordinate conversion block 23 of the host vehicle position estimation unit 18, in the same manner as step S23 in FIG. 13, converts the point cloud data for one cycle scanned by the lidar 2 at the current processing time into data in the world coordinate system based on the predicted or estimated host vehicle position (step S44).
[0103] Next, the point cloud data association block 24 associates the point cloud data converted into the world coordinate system with the voxels in which the voxel data VD exists (step S45). Then, the position correction block 25 of the host vehicle position estimation unit 18 performs NDT matching based on the associated point cloud data and the voxel data VD of the voxels, and calculates the estimated host vehicle position at the current time (including attitude angles such as the yaw angle) (step S46).
[0104] Next, the host vehicle position estimation unit 18 determines whether the variable n is less than the number of search times N (step S47). When the variable n is less than the number of search times N (step S47; Yes), the host vehicle position estimation unit 18 increments n by 1 (step S48), returns the process to step S44, and performs host vehicle position estimation by NDT matching until n reaches the number of search times N. On the other hand, when the variable n is not less than the number of search times N (step S47; No), that is, when the variable n reaches the number of search times N, the host vehicle position estimation unit 18 calculates the DAR (step S49).
[0105] Then, the host vehicle position estimation unit 18 compares the calculated DAR with the lower threshold or the upper threshold. Specifically, when the number of search times N is the initial value (in the case of N = 10 in the above example), the host vehicle position estimation unit 18 compares the DAR with the lower threshold in step S50, and when the number of search times N is not the initial value (in the case of N = 20 in the above example), the host vehicle position estimation unit 18 compares the DAR with the upper threshold in step S52.
[0106] In step S50, when the host vehicle position estimation unit 18 determines that the DAR is less than the lower threshold (step S50; Yes), it sets the number of search times N and writes it to the memory such as the storage unit 12 (step S51). For example, the host vehicle position estimation unit 18 writes a value obtained by adding a predetermined value to the initial value of the number of search times N as the new number of search times N to the memory. On the other hand, when the DAR is greater than or equal to the lower threshold (step S50; No), the host vehicle position estimation unit 18 determines that there is no need to change the number of search times N and proceeds to step S54.
[0107] On the other hand, in step S52, when the vehicle position estimation unit 18 determines that the DAR is greater than the upper threshold (step S52; Yes), it sets the search count N and writes it to a memory such as the storage unit 12 (step S53). For example, the vehicle position estimation unit 18 sets the search count N to the value before being updated in the previously executed step S51 (i.e., the initial value). On the other hand, when the DAR is less than or equal to the upper threshold (step S52; No), the vehicle position estimation unit 18 determines that there is no need to change the search count N and proceeds to step S54.
[0108] Then, the vehicle position estimation unit 18 outputs the latest vehicle position estimation result calculated in step S46 and the latest DAR calculated in step S49 (step S54). According to the processing of this flowchart, it is possible to avoid increasing the search count N more than necessary and stabilize the position estimation when the position estimation accuracy deteriorates.
[0109] As described above, the present invention has been described with reference to the embodiments, but the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention. That is, the present invention naturally includes various modifications and corrections that those skilled in the art could make according to the entire disclosure including the claims and the technical idea. Also, each disclosure of the above-cited patent documents and the like is incorporated herein by reference.
Explanation of Reference Numerals
[0110] 1 In-vehicle device 2 LiDAR 3 Gyro sensor 4 Vehicle speed sensor 5 GPS receiver 10 Map DB
Claims
1. an acquisition unit that acquires point cloud data output by a measurement device; a matching unit that matches the point cloud data with position information of an object for each unit area obtained by dividing a space, and matches the measurement points constituting the point cloud data with each of the unit areas; a position estimation unit that estimates a position of a moving body including the measurement device based on a measurement point associated with any one of the unit areas and position information of an object in the unit area; a calculation unit that calculates a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit area among the measurement points of the point cloud data to the number of measurement points of the point cloud data; An information processing device comprising:
2. The information processing device according to claim 1 , wherein the position estimation unit determines whether or not it is necessary to re-execute the position estimation based on the reliability index.
3. the position estimation unit performs the position estimation by searching for an estimation parameter related to a position of the moving object within a predetermined search range; The information processing device according to claim 2 , wherein the position estimation unit determines the search range when re-executing the position estimation based on values of the estimation parameters obtained by an immediately preceding position estimation.
4. 4. The information processing device according to claim 2, wherein the position estimation unit repeatedly performs the position estimation until at least one of the following conditions is satisfied: the reliability index becomes equal to or greater than a predetermined threshold, the reliability index no longer fluctuates, or the number of times the position estimation is performed reaches a predetermined upper limit.
5. The information processing device according to claim 4 , wherein the position estimation unit determines the upper limit number of times based on a moving speed of the moving object.
6. the position estimation unit performs the position estimation by searching for an estimation parameter related to a position of the moving object within a predetermined search range; The information processing device according to any one of claims 1 to 3, wherein the position estimation unit performs the position estimation using a search range determined based on the value of the estimation parameter obtained by the immediately preceding position estimation a number of times determined based on the reliability index.
7. The information processing device according to any one of claims 1 to 6, wherein the position estimation unit calculates the reliability index based on a degree of matching in the position estimation between a measurement point associated with any one of the unit areas and position information of an object in the unit area, and the ratio.
8. Acquire the point cloud data output by the measuring device, By comparing the point cloud data with position information of an object for each unit area obtained by dividing a space, a correspondence is established between the measurement points constituting the point cloud data and each of the unit areas; performing a position estimation of a moving body including the measurement device based on a measurement point associated with any one of the unit areas and position information of an object in the unit area; calculating a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit area among the measurement points of the point cloud data to the number of measurement points of the point cloud data; Information processing methods.
9. an acquisition unit that acquires point cloud data output by a measurement device; a matching unit that matches the point cloud data with position information of an object for each unit area obtained by dividing a space, and matches the measurement points constituting the point cloud data with each of the unit areas; a position estimation unit that estimates a position of a moving body including the measurement device based on a measurement point associated with any one of the unit areas and position information of an object in the unit area; a calculation unit that calculates a reliability index of the position obtained by the position estimation using a ratio of the number of measurement points associated with the unit area among the measurement points of the point cloud data to the number of measurement points of the point cloud data; A program that makes a computer function as a
10. A storage medium storing the program according to claim 9.
Citation Information
Patent Citations
Map generation method, own position estimation method, robot system and robot
JP2017045447A
Voxel Based Ground Plane Estimation and Object Segmentation
US20180364717A1
Position estimation device, server device, position estimation method, map information update method, position estimation program, map information update program, recording medium, and map information
WO2018180096A1
Information processing device and mobile robot
WO2020183659A1
Autonomous mobile system
WO2013076829A1